コード例 #1
0
ファイル: badges.py プロジェクト: allieus/askbot3
def register_badge_settings(badge_slug=None, badge_name=None, params=None):
    settings.register(
        BooleanValue(
            BADGES,
            badge_slug + '_BADGE_ENABLED',
            default=True,
            description=_('Enable "%s" badge') % badge_name
        )
    )
    if params is None:
        return

    for param_slug, param_data in params.items():
        param_description = param_data[0]
        param_default = param_data[1]
        settings.register(
            IntegerValue(
                BADGES,
                badge_slug + '_BADGE_' + param_slug,
                description=string_concat(badge_name, ': ', param_description),
                default=param_default))
コード例 #2
0
from askbot.conf.super_groups import LOGIN_USERS_COMMUNICATION
from askbot.deps import livesettings
from django.utils.translation import ugettext_lazy as _
from django.conf import settings as django_settings
from askbot.skins import utils as skin_utils

LOGIN_PROVIDERS = livesettings.ConfigurationGroup(
                    'LOGIN_PROVIDERS',
                    _('Login provider setings'),
                    super_group = LOGIN_USERS_COMMUNICATION
                )

settings.register(
    livesettings.BooleanValue(
        LOGIN_PROVIDERS,
        'PASSWORD_REGISTER_SHOW_PROVIDER_BUTTONS',
        default = True,
        description=_('Show alternative login provider buttons on the password "Sign Up" page'),
    )
)

settings.register(
    livesettings.BooleanValue(
        LOGIN_PROVIDERS,
        'SIGNIN_ALWAYS_SHOW_LOCAL_LOGIN',
        default = True,
        description=_('Always display local login form and hide "Askbot" button.'),
    )
)

settings.register(
    livesettings.BooleanValue(
コード例 #3
0
ファイル: badges.py プロジェクト: B-Rich/askbot-devel
from askbot.conf.settings_wrapper import settings
from askbot.conf.super_groups import REP_AND_BADGES
from askbot.deps.livesettings import ConfigurationGroup, IntegerValue
from django.utils.translation import ugettext as _

BADGES = ConfigurationGroup(
                    'BADGES',
                    _('Badge settings'),
                    ordering=2,
                    super_group = REP_AND_BADGES
                )

settings.register(
    IntegerValue(
        BADGES,
        'DISCIPLINED_BADGE_MIN_UPVOTES',
        default=3,
        description=_('Disciplined: minimum upvotes for deleted post')
    )
)

settings.register(
    IntegerValue(
        BADGES,
        'PEER_PRESSURE_BADGE_MIN_DOWNVOTES',
        default=3,
        description=_('Peer Pressure: minimum downvotes for deleted post')
    )
)

settings.register(
    IntegerValue(
コード例 #4
0
from askbot.conf.settings_wrapper import settings
from askbot.deps.livesettings import ConfigurationGroup
from askbot.deps.livesettings import values
from django.utils.translation import ugettext as _
from django.conf import settings as django_settings
from askbot.skins import utils as skin_utils
from askbot import const

GENERAL_SKIN_SETTINGS = ConfigurationGroup("GENERAL_SKIN_SETTINGS", _("Skin and User Interface settings"))

settings.register(
    values.ImageValue(
        GENERAL_SKIN_SETTINGS,
        "SITE_LOGO_URL",
        description=_("Q&A site logo"),
        help_text=_("To change the logo, select new file, " "then submit this whole form."),
        upload_directory=django_settings.ASKBOT_FILE_UPLOAD_DIR,
        upload_url="/" + django_settings.ASKBOT_UPLOADED_FILES_URL,
        default="/images/logo.gif",
        url_resolver=skin_utils.get_media_url,
    )
)

settings.register(
    values.BooleanValue(
        GENERAL_SKIN_SETTINGS,
        "SHOW_LOGO",
        description=_("Show logo"),
        help_text=_(
            "Check if you want to show logo in the forum header "
            "or uncheck in the case you do not want the logo to "
            "appear in the default location"
コード例 #5
0
"""
Settings for askbot data display and entry
"""
from askbot.conf.settings_wrapper import settings
from askbot.deps.livesettings import ConfigurationGroup, BooleanValue, IntegerValue
from askbot.deps.livesettings import StringValue
from django.utils.translation import ugettext as _
from askbot import const

FORUM_DATA_RULES = ConfigurationGroup("FORUM_DATA_RULES", _("Settings for askbot data entry and display"))

settings.register(
    BooleanValue(FORUM_DATA_RULES, "WIKI_ON", default=True, description=_("Check to enable community wiki feature"))
)

settings.register(
    IntegerValue(
        FORUM_DATA_RULES, "MAX_TAG_LENGTH", default=20, description=_("Maximum length of tag (number of characters)")
    )
)

settings.register(
    IntegerValue(
        FORUM_DATA_RULES,
        "MAX_COMMENTS_TO_SHOW",
        default=5,
        description=_("Default max number of comments to display under posts"),
    )
)

settings.register(
コード例 #6
0
ファイル: moderation.py プロジェクト: UV-CDAT/askbot-devel
    _('Content moderation'),
    super_group=DATA_AND_FORMATTING
)

CONTENT_MODERATION_MODE_CHOICES = (
    ('flags', _('audit flagged posts')),
    ('audit', _('audit flagged posts and watched users')),
    ('premoderation', _('pre-moderate watched users and audit flagged posts')),
)

settings.register(
    StringValue(
        MODERATION,
        'CONTENT_MODERATION_MODE',
        choices=CONTENT_MODERATION_MODE_CHOICES,
        default='flags',
        description=_('Content moderation method'),
        help_text=_(
            "Audit is made after the posts are published, pre-moderation "
            "prevents publishing before moderator's decision.")
    )
)

settings.register(
    LongStringValue(
        MODERATION,
        'FORBIDDEN_PHRASES',
        default='',
        description=_('Reject all posts with these phrases'),
        help_text=_(
            'Enter one phrase per line (case-insensitive). '
            'Posts with these phrases will be rejected '
コード例 #7
0
ファイル: moderation.py プロジェクト: B-Rich/askbot-devel
from askbot.conf.settings_wrapper import settings
from askbot.conf.super_groups import DATA_AND_FORMATTING
from askbot.deps.livesettings import ConfigurationGroup
from askbot.deps.livesettings import BooleanValue
from django.core.cache import cache
from django.utils.translation import ugettext as _

def empty_cache_callback(old_value, new_value):
    """used to clear cache on change of certain values"""
    if old_value != new_value:
        #todo: change this to warmup cache
        cache.clear()
    return new_value

MODERATION = ConfigurationGroup(
                    'MODERATION',
                    _('Content moderation'),
                    super_group = DATA_AND_FORMATTING
                )

settings.register(
    BooleanValue(
        MODERATION,
        'ENABLE_CONTENT_MODERATION',
        default = False,
        description = _('Enable content moderation'),
        update_callback = empty_cache_callback
    )
)
コード例 #8
0
ファイル: categories.py プロジェクト: ramiro/askbot-devel
"""
from askbot.conf.settings_wrapper import settings
from askbot.deps import livesettings
from django.utils.translation import ugettext as _


CATEGORIES = livesettings.ConfigurationGroup(
                    'CATEGORIES',
                    _('Categories settings'),
                    ordering=2
                )

settings.register(
    livesettings.BooleanValue(
        CATEGORIES,
        'ENABLE_CATEGORIES',
        default=False,
        description=_('Check to enable categories for content'),
    )
)

settings.register(
    livesettings.IntegerValue(
        CATEGORIES,
        'CATEGORIES_MAX_TREE_DEPTH',
        default=3,
        description=_('Number of levels in the categories hierarchy tree'),
    )
)

settings.register(
    livesettings.StringValue(
コード例 #9
0
ファイル: email.py プロジェクト: publicbull/askbot-devel
from askbot.deps import livesettings
from askbot import const
from django.utils.translation import ugettext_lazy as _
from django.conf import settings as django_settings

EMAIL_SUBJECT_PREFIX = getattr(django_settings, 'EMAIL_SUBJECT_PREFIX', '')

EMAIL = livesettings.ConfigurationGroup('EMAIL',
                                        _('Email and email alert settings'),
                                        super_group=LOGIN_USERS_COMMUNICATION)

settings.register(
    livesettings.StringValue(
        EMAIL,
        'EMAIL_SUBJECT_PREFIX',
        default=EMAIL_SUBJECT_PREFIX,
        description=_('Prefix for the email subject line'),
        help_text=_('This setting takes default from the django setting'
                    'EMAIL_SUBJECT_PREFIX. A value entered here will override'
                    'the default.')))


def get_default_admin_email():
    try:
        return django_settings.ADMINS[0][1]
    except:
        return ''


settings.register(
    livesettings.StringValue(
コード例 #10
0
For example number of times a person can vote each day, etc.
"""
from askbot.conf.settings_wrapper import settings
from askbot.conf.super_groups import REP_AND_BADGES
from livesettings.values import ConfigurationGroup, IntegerValue
from django.utils.translation import ugettext_lazy as _

VOTE_RULES = ConfigurationGroup('VOTE_RULES',
                                _('Vote and flag limits'),
                                ordering=1,
                                super_group=REP_AND_BADGES)

settings.register(
    IntegerValue(VOTE_RULES,
                 'MAX_VOTES_PER_USER_PER_DAY',
                 default=30,
                 description=_('Number of votes a user can cast per day')))

settings.register(
    IntegerValue(VOTE_RULES,
                 'MAX_FLAGS_PER_USER_PER_DAY',
                 default=5,
                 description=_('Maximum number of flags per user per day')))

settings.register(
    IntegerValue(
        VOTE_RULES,
        'VOTES_LEFT_WARNING_THRESHOLD',
        default=5,
        description=_('Threshold for warning about remaining daily votes')))
コード例 #11
0
Q&A website settings - title, desctiption, basic urls
keywords
"""
from askbot.conf.settings_wrapper import settings
from askbot.conf.super_groups import CONTENT_AND_UI
from askbot.deps import livesettings
from django.utils.translation import ugettext as _

QA_SITE_SETTINGS = livesettings.ConfigurationGroup(
    'QA_SITE_SETTINGS',
    _('URLS, keywords & greetings'),
    super_group=CONTENT_AND_UI)

settings.register(
    livesettings.StringValue(QA_SITE_SETTINGS,
                             'APP_TITLE',
                             default=u'Askbot: Open Source Q&A Forum',
                             description=_('Site title for the Q&A forum')))

settings.register(
    livesettings.StringValue(
        QA_SITE_SETTINGS,
        'APP_KEYWORDS',
        default=u'Askbot,CNPROG,forum,community',
        description=_('Comma separated list of Q&A site keywords')))

settings.register(
    livesettings.StringValue(
        QA_SITE_SETTINGS,
        'APP_COPYRIGHT',
        default='Copyright Askbot, 2010-2011.',
コード例 #12
0
from askbot.conf.settings_wrapper import settings
from askbot.conf.super_groups import REP_AND_BADGES
import livesettings

KARMA_AND_BADGE_VISIBILITY = livesettings.ConfigurationGroup(
    'KARMA_AND_BADGE_VISIBILITY',
    _('Karma & Badge visibility'),
    super_group=REP_AND_BADGES)

settings.register(
    livesettings.StringValue(
        KARMA_AND_BADGE_VISIBILITY,
        'KARMA_MODE',
        default='public',
        choices=(
            ('public', 'show publicly'),
            ('private', 'show to owners only'),
            ('hidden', 'hide completely'),
        ),  # TODO: later implement hidden mode
        description=_("Visibility of karma"),
        clear_cache=True,
        help_text=_(
            "User's karma may be shown publicly or only to the owners")))

settings.register(
    livesettings.StringValue(
        KARMA_AND_BADGE_VISIBILITY,
        'BADGES_MODE',
        default='public',
        choices=(('public', 'show publicly'),
                 ('hidden',
                  'hide completely')),  # TODO: later implement private mode
コード例 #13
0
ファイル: spam_and_moderation.py プロジェクト: JDShu/SCOPE
"""Settings for content moderation and spam control"""
from django.utils.translation import ugettext as _
from askbot import const
from askbot.deps import livesettings
from askbot.conf.settings_wrapper import settings
from askbot.conf.super_groups import EXTERNAL_SERVICES

SPAM_AND_MODERATION = livesettings.ConfigurationGroup(
    'SPAM_AND_MODERATION',
    _('Akismet spam protection'),
    super_group=EXTERNAL_SERVICES)

settings.register(
    livesettings.BooleanValue(
        SPAM_AND_MODERATION,
        'USE_AKISMET',
        description=_(
            'Enable Akismet spam detection(keys below are required)'),
        default=False,
        help_text=_('To get an Akismet key please visit '
                    '<a href="%(url)s">Akismet site</a>') %
        {'url': const.DEPENDENCY_URLS['akismet']}))

settings.register(
    livesettings.StringValue(SPAM_AND_MODERATION,
                             'AKISMET_API_KEY',
                             description=_('Akismet key for spam detection')))
コード例 #14
0
"""Settings for LDAP login for Askbot"""
from askbot.conf.settings_wrapper import settings
from askbot.conf.super_groups import EXTERNAL_SERVICES
from askbot.deps import livesettings
from django.utils.translation import ugettext_lazy as _

LDAP_SETTINGS = livesettings.ConfigurationGroup('LDAP_SETTINGS',
                                                _('LDAP login configuration'),
                                                super_group=EXTERNAL_SERVICES)

settings.register(
    livesettings.BooleanValue(
        LDAP_SETTINGS,
        'USE_LDAP_FOR_PASSWORD_LOGIN',
        description=_('Use LDAP authentication for the password login'),
        defaut=False))

settings.register(
    livesettings.BooleanValue(
        LDAP_SETTINGS,
        'LDAP_AUTOCREATE_USERS',
        description=_('Automatically create user accounts when possible'),
        default=False,
        help_text=_(
            'Potentially reduces number of steps in the registration process '
            'but can expose personal information, e.g. when LDAP login name is '
            'the same as email address or real name.')))

LDAP_PROTOCOL_VERSION_CHOICES = (('3', _('Version 3')),
                                 ('2',
                                  _('Version 2 (insecure and deprecated)!!!')))
コード例 #15
0
User policy settings
"""
from askbot.conf.settings_wrapper import settings
from askbot.conf.super_groups import LOGIN_USERS_COMMUNICATION
from askbot.deps import livesettings
from django.conf import settings as django_settings
from askbot.skins import utils as skin_utils
from django.utils.translation import ugettext_lazy as _
from askbot import const

USER_SETTINGS = livesettings.ConfigurationGroup(
    'USER_SETTINGS', _('User settings'), super_group=LOGIN_USERS_COMMUNICATION)

settings.register(
    livesettings.LongStringValue(
        USER_SETTINGS,
        'NEW_USER_GREETING',
        default='',
        description=_('On-screen greeting shown to the new users')))

settings.register(
    livesettings.BooleanValue(
        USER_SETTINGS,
        'ALLOW_ANONYMOUS_FEEDBACK',
        default=True,
        description=_('Allow anonymous users send feedback')))

settings.register(
    livesettings.BooleanValue(USER_SETTINGS,
                              'EDITABLE_SCREEN_NAME',
                              default=True,
                              description=_('Allow editing user screen name')))
コード例 #16
0
ファイル: flatpages.py プロジェクト: YiquanWang/askbot-devel
from askbot.deps.livesettings import ConfigurationGroup, LongStringValue
from askbot.conf.super_groups import CONTENT_AND_UI
from django.utils.translation import ugettext_lazy as _

FLATPAGES = ConfigurationGroup(
                'FLATPAGES',
                _('Flatpages - about, privacy policy, etc.'),
                super_group = CONTENT_AND_UI
            )

settings.register(
    LongStringValue(
        FLATPAGES,
        'FORUM_ABOUT',
        description=_('Text of the Q&A forum About page (html format)'),
        help_text=\
        _(
            'Save, then <a href="http://validator.w3.org/">'
            'use HTML validator</a> on the "about" page to check your input.'
        )
    )
)

settings.register(
    LongStringValue(
        FLATPAGES,
        'FORUM_FAQ',
        description=_('Text of the Q&A forum FAQ page (html format)'),
        help_text=\
        _(
            'Save, then <a href="http://validator.w3.org/">'
            'use HTML validator</a> on the "faq" page to check your input.'
コード例 #17
0
"""
User policy settings
"""
from askbot.conf.settings_wrapper import settings
from askbot.deps import livesettings
from django.utils.translation import ugettext as _

USER_SETTINGS = livesettings.ConfigurationGroup(
                    'USER_SETTINGS',
                    _('User settings')
                )

settings.register(
    livesettings.BooleanValue(
        USER_SETTINGS,
        'EDITABLE_SCREEN_NAME',
        default = True,
        description = _('Allow editing user screen name')
    )
)

settings.register(
    livesettings.BooleanValue(
        USER_SETTINGS,
        'ALLOW_ACCOUNT_RECOVERY_BY_EMAIL',
        default = True,
        description = _('Allow account recovery by email')
    )
)

settings.register(
    livesettings.BooleanValue(
コード例 #18
0
"""
Social sharing settings
"""

from django.utils.translation import ugettext_lazy as _
from askbot.conf.settings_wrapper import settings
from askbot.conf.super_groups import EXTERNAL_SERVICES
from livesettings import ConfigurationGroup, BooleanValue, StringValue

SOCIAL_SHARING = ConfigurationGroup('SOCIAL_SHARING',
                                    _('Content sharing'),
                                    super_group=EXTERNAL_SERVICES)

settings.register(
    BooleanValue(SOCIAL_SHARING,
                 'RSS_ENABLED',
                 default=True,
                 description=_('Check to enable RSS feeds')))

settings.register(
    StringValue(SOCIAL_SHARING,
                'SHARING_SUFFIX_TEXT',
                default='',
                description=_('Hashtag or suffix to sharing messages')))

settings.register(
    BooleanValue(
        SOCIAL_SHARING,
        'ENABLE_SHARING_FACEBOOK',
        default=True,
        description=_('Check to enable sharing of questions on Facebook')))
コード例 #19
0
FORUM_DATA_RULES = livesettings.ConfigurationGroup(
                        'FORUM_DATA_RULES',
                        _('Data entry and display rules'),
                        super_group = DATA_AND_FORMATTING
                    )

EDITOR_CHOICES = (
    ('markdown', 'markdown'),
    ('tinymce', 'WYSIWYG (tinymce)')
)

settings.register(
    livesettings.StringValue(
        FORUM_DATA_RULES,
        'EDITOR_TYPE',
        default = 'markdown',
        choices = EDITOR_CHOICES,
        description = _('Editor for the posts')
    )
)

COMMENTS_EDITOR_CHOICES = (
    ('plain-text', 'Plain text editor'),
    ('rich-text', 'Same editor as for questions and answers')
)

settings.register(
    livesettings.StringValue(
        FORUM_DATA_RULES,
        'COMMENTS_EDITOR_TYPE',
        default='plain-text',
コード例 #20
0
"""
Settings for reputation changes that apply to 
user in response to various actions by the same
users or others
"""
from askbot.conf.settings_wrapper import settings
from askbot.deps.livesettings import ConfigurationGroup, IntegerValue
from django.utils.translation import ugettext as _

BADGES = ConfigurationGroup('BADGES', _('Badge settings'), ordering=2)

settings.register(
    IntegerValue(
        BADGES,
        'DISCIPLINED_BADGE_MIN_UPVOTES',
        default=3,
        description=_('Disciplined: minimum upvotes for deleted post')))

settings.register(
    IntegerValue(
        BADGES,
        'PEER_PRESSURE_BADGE_MIN_DOWNVOTES',
        default=3,
        description=_('Peer Pressure: minimum downvotes for deleted post')))

settings.register(
    IntegerValue(BADGES,
                 'TEACHER_BADGE_MIN_UPVOTES',
                 default=1,
                 description=_('Teacher: minimum upvotes for the answer')))
コード例 #21
0
ファイル: login_providers.py プロジェクト: allieus/askbot3
from askbot.conf.super_groups import LOGIN_USERS_COMMUNICATION
import livesettings
from django.utils.translation import string_concat
from django.utils.translation import ugettext_lazy as _
from askbot.skins import utils as skin_utils

LOGIN_PROVIDERS = livesettings.ConfigurationGroup(
    'LOGIN_PROVIDERS',
    _('Login provider setings'),
    super_group=LOGIN_USERS_COMMUNICATION)

settings.register(
    livesettings.BooleanValue(
        LOGIN_PROVIDERS,
        'TERMS_CONSENT_REQUIRED',
        default=False,
        description=_('Acceptance of terms required at registration'),
        help_text=settings.get_related_settings_info(('FLATPAGES', 'TERMS', True))
    )
)

# TODO: remove this - we don't want the local login button
# but instead always show the login/password field when used
settings.register(
    livesettings.BooleanValue(
        LOGIN_PROVIDERS,
        'SIGNIN_ALWAYS_SHOW_LOCAL_LOGIN',
        default=True,
        description=_('Always display local login form and hide "Askbot" button.'),
    )
)
コード例 #22
0
from askbot.conf.settings_wrapper import settings
from askbot.deps import livesettings
from askbot import const
from askbot.conf.super_groups import DATA_AND_FORMATTING
from django.utils.translation import ugettext_lazy as _

FORUM_DATA_RULES = livesettings.ConfigurationGroup(
    'FORUM_DATA_RULES',
    _('Data entry and display rules'),
    super_group=DATA_AND_FORMATTING)

EDITOR_CHOICES = (('markdown', 'markdown'), ('tinymce', 'WYSIWYG (tinymce)'))

settings.register(
    livesettings.StringValue(FORUM_DATA_RULES,
                             'EDITOR_TYPE',
                             default='markdown',
                             choices=EDITOR_CHOICES,
                             description=_('Editor for the posts')))

COMMENTS_EDITOR_CHOICES = (('plain-text', 'Plain text editor'),
                           ('rich-text',
                            'Same editor as for questions and answers'))

settings.register(
    livesettings.StringValue(FORUM_DATA_RULES,
                             'COMMENTS_EDITOR_TYPE',
                             default='plain-text',
                             choices=COMMENTS_EDITOR_CHOICES,
                             description=_('Editor for the comments')))

settings.register(
コード例 #23
0
from askbot.conf.super_groups import CONTENT_AND_UI
from django.utils.translation import ugettext_lazy as _

FLATPAGES = ConfigurationGroup(
                'FLATPAGES',
                _('Messages and pages - about, privacy policy, etc.'),
                super_group = CONTENT_AND_UI
            )

settings.register(
    LongStringValue(
        FLATPAGES,
        'FORUM_ABOUT',
        description=_('Text of the Q&amp;A forum About page (html format)'),
        localized=True,
        help_text=\
        _(
            'Save, then <a href="http://validator.w3.org/">'
            'use HTML validator</a> on the "about" page to check your input.'
        )
    )
)

settings.register(
    LongStringValue(
        FLATPAGES,
        'FORUM_FAQ',
        description=_('Text of the Q&amp;A forum FAQ page (html format)'),
        localized=True,
        help_text=\
        _(
コード例 #24
0
from askbot.conf.super_groups import LOGIN_USERS_COMMUNICATION
from askbot.deps import livesettings
from django.utils.translation import ugettext_lazy as _
from django.conf import settings as django_settings
from askbot.skins import utils as skin_utils

LOGIN_PROVIDERS = livesettings.ConfigurationGroup(
    'LOGIN_PROVIDERS',
    _('Login provider setings'),
    super_group=LOGIN_USERS_COMMUNICATION)

settings.register(
    livesettings.BooleanValue(
        LOGIN_PROVIDERS,
        'PASSWORD_REGISTER_SHOW_PROVIDER_BUTTONS',
        default=True,
        description=
        _('Show alternative login provider buttons on the password "Sign Up" page'
          ),
    ))

settings.register(
    livesettings.BooleanValue(
        LOGIN_PROVIDERS,
        'SIGNIN_ALWAYS_SHOW_LOCAL_LOGIN',
        default=True,
        description=_(
            'Always display local login form and hide "Askbot" button.'),
    ))

settings.register(
コード例 #25
0
from askbot.conf.super_groups import LOGIN_USERS_COMMUNICATION
from askbot.deps import livesettings
from django.utils.translation import ugettext_lazy as _
from django.conf import settings as django_settings
from askbot.skins import utils as skin_utils

LOGIN_PROVIDERS = livesettings.ConfigurationGroup(
                    'LOGIN_PROVIDERS',
                    _('Login provider setings'),
                    super_group = LOGIN_USERS_COMMUNICATION
                )

settings.register(
    livesettings.BooleanValue(
        LOGIN_PROVIDERS,
        'PASSWORD_REGISTER_SHOW_PROVIDER_BUTTONS',
        default = False,
        description=_('Show alternative login provider buttons on the password "Sign Up" page'),
    )
)

settings.register(
    livesettings.BooleanValue(
        LOGIN_PROVIDERS,
        'SIGNIN_ALWAYS_SHOW_LOCAL_LOGIN',
        default = True,
        description=_('Always display local login form and hide "Askbot" button.'),
    )
)

settings.register(
    livesettings.BooleanValue(
コード例 #26
0
ファイル: flatpages.py プロジェクト: stone5495/askbot-devel
from askbot.deps.livesettings import ConfigurationGroup, LongStringValue
from askbot.conf.super_groups import CONTENT_AND_UI
from django.utils.translation import ugettext_lazy as _

FLATPAGES = ConfigurationGroup(
    'FLATPAGES',
    _('Messages and pages - about, privacy policy, etc.'),
    super_group=CONTENT_AND_UI)

settings.register(
    LongStringValue(
        FLATPAGES,
        'FORUM_ABOUT',
        description=_('Text of the Q&amp;A forum About page (html format)'),
        localized=True,
        help_text=\
        _(
            'Save, then <a href="http://validator.w3.org/">'
            'use HTML validator</a> on the "about" page to check your input.'
        )
    )
)

settings.register(
    LongStringValue(
        FLATPAGES,
        'FORUM_FAQ',
        description=_('Text of the Q&amp;A forum FAQ page (html format)'),
        localized=True,
        help_text=\
        _(
コード例 #27
0
from askbot.conf.settings_wrapper import settings
from askbot.conf.super_groups import REP_AND_BADGES
from askbot.deps import livesettings
from django.utils.translation import ugettext as _

MIN_REP = livesettings.ConfigurationGroup(
    'MIN_REP', 
    _('Karma thresholds'),
    ordering=0,
    super_group = REP_AND_BADGES
)

settings.register(
    livesettings.IntegerValue(
        MIN_REP,
        'MIN_REP_TO_VOTE_UP',
        default=15,
        description=_('Upvote')
    )
)

settings.register(
    livesettings.IntegerValue(
        MIN_REP,
        'MIN_REP_TO_VOTE_DOWN',
        default=100,
        description=_('Downvote')
    )
)

settings.register(
    livesettings.IntegerValue(
コード例 #28
0
ファイル: user_settings.py プロジェクト: oloed/askbot-devel
"""
User policy settings
"""
from askbot.conf.settings_wrapper import settings
from askbot.deps import livesettings
from django.utils.translation import ugettext as _
from askbot import const

USER_SETTINGS = livesettings.ConfigurationGroup('USER_SETTINGS',
                                                _('User settings'))

settings.register(
    livesettings.BooleanValue(USER_SETTINGS,
                              'EDITABLE_SCREEN_NAME',
                              default=True,
                              description=_('Allow editing user screen name')))

settings.register(
    livesettings.BooleanValue(
        USER_SETTINGS,
        'ALLOW_ACCOUNT_RECOVERY_BY_EMAIL',
        default=True,
        description=_('Allow account recovery by email')))

settings.register(
    livesettings.BooleanValue(
        USER_SETTINGS,
        'ALLOW_ADD_REMOVE_LOGIN_METHODS',
        default=True,
        description=_('Allow adding and removing login methods')))
コード例 #29
0
from askbot.deps.livesettings import values
from django.utils.translation import ugettext_lazy as _
from askbot.conf.super_groups import CONTENT_AND_UI
SIDEBAR_QUESTION = ConfigurationGroup(#shitty name - why sidebar?
                    'SIDEBAR_QUESTION',
                    _('Question page banners and sidebar'),
                    super_group = CONTENT_AND_UI
                )

settings.register(
    values.LongStringValue(
        SIDEBAR_QUESTION,
        'QUESTION_PAGE_TOP_BANNER',
        description = _('Top banner'),
        default = '',
        help_text = _(
            'When using this option, please '
            'use the HTML validation service to make sure that '
            'your input is valid and works well in all browsers.'
        )
    )
)

settings.register(
    values.BooleanValue(
        SIDEBAR_QUESTION,
        'QUESTION_PAGE_TOP_BANNER_ANON_ONLY',
        default=False,
        description=_('Show above only to anonymous users'),
    )
)
コード例 #30
0
ファイル: email_text.py プロジェクト: chhotaladka/segfault
from django.utils.translation import ugettext_lazy as _

from askbot.conf.settings_wrapper import settings
from askbot.conf.super_groups import LOGIN_USERS_COMMUNICATION
from askbot.deps import livesettings

EMAIL_TEXT = livesettings.ConfigurationGroup(
    'EMAIL_TEXT',
    _('Email template phrases'),
    super_group=LOGIN_USERS_COMMUNICATION)

settings.register(
    livesettings.StringValue(
        EMAIL_TEXT,
        'EMAIL_TEXT_SHORT_WELCOME',
        description=_('Short welcome message, for subject line'),
        default=_('Welcome to {{ SITE_NAME }}!'),
        help_text=_(
            '<b>NOTE: All email text settings allow placeholders: '
            '{{ USER_NAME }}, {{ SITE_NAME }} and {{ SITE_LINK }}.</b>')))

settings.register(
    livesettings.LongStringValue(
        EMAIL_TEXT,
        'EMAIL_TEXT_LONG_WELCOME',
        description=_('Longer welcome message, for email body'),
        default=_('<p>Please visit {{ SITE_NAME }} at {{ SITE_LINK }}, we '
                  'look forward to your posts.</p>'),
    ))

settings.register(
コード例 #31
0
from askbot import const
from askbot.conf.super_groups import DATA_AND_FORMATTING
from django.utils.translation import ugettext as _

FORUM_DATA_RULES = livesettings.ConfigurationGroup(
                        'FORUM_DATA_RULES',
                        _('Data entry and display rules'),
                        super_group = DATA_AND_FORMATTING
                    )

settings.register(
    livesettings.BooleanValue(
        FORUM_DATA_RULES,
        'ENABLE_VIDEO_EMBEDDING',
        default = False,
        description = _(
            'Enable embedding videos. '
            '<em>Note: please read <a href="%(url)s>read this</a> first.</em>'
        ) % {'url': const.DEPENDENCY_URLS['embedding-video']}
    )
)

settings.register(
    livesettings.BooleanValue(
        FORUM_DATA_RULES,
        'WIKI_ON',
        default = True,
        description = _('Check to enable community wiki feature')
    )
)
コード例 #32
0
from askbot.deps.livesettings import values
from askbot.conf.super_groups import CONTENT_AND_UI

SIDEBAR_PROFILE = ConfigurationGroup(
    'SIDEBAR_PROFILE',
    _('User profile sidebar'),
    super_group=CONTENT_AND_UI
)

settings.register(
    values.LongStringValue(
        SIDEBAR_PROFILE,
        'SIDEBAR_PROFILE',
        description=_('Custom sidebar'),
        default='',
        localized=True,
        help_text=_(
            'Use this area to enter content at the TOP of the sidebar in HTML '
            'format. When using this option (as well as the sidebar footer), '
            'please use the HTML validation service to make sure that your '
            'input is valid and works well in all browsers.')
    )
)


settings.register(
    values.BooleanValue(
        SIDEBAR_PROFILE,
        'SIDEBAR_PROFILE_ANON_ONLY',
        description=_('Show the text entered above only to anonymous users'),
        default=False
    )
コード例 #33
0
ファイル: email.py プロジェクト: conceptcreative/askbot-devel
EMAIL_SUBJECT_PREFIX = getattr(django_settings, 'EMAIL_SUBJECT_PREFIX', '')

EMAIL = livesettings.ConfigurationGroup(
            'EMAIL',
            _('Email and email alert settings'), 
            super_group = LOGIN_USERS_COMMUNICATION
        )

settings.register(
    livesettings.StringValue(
        EMAIL,
        'EMAIL_SUBJECT_PREFIX',
        default = EMAIL_SUBJECT_PREFIX,
        description = _('Prefix for the email subject line'),
        help_text = _(
                'This setting takes default from the django setting'
                'EMAIL_SUBJECT_PREFIX. A value entered here will override'
                'the default.'
            )
    )
)

def get_default_admin_email():
    try:
        return django_settings.ADMINS[0][1]
    except:
        return ''

settings.register(
    livesettings.StringValue(
コード例 #34
0
from askbot.conf.settings_wrapper import settings
from askbot.conf.super_groups import LOGIN_USERS_COMMUNICATION
from askbot.deps import livesettings
from askbot.skins import utils as skin_utils
from askbot.utils.loading import module_exists

LOGIN_PROVIDERS = livesettings.ConfigurationGroup(
    'LOGIN_PROVIDERS',
    _('Login provider settings'),
    super_group=LOGIN_USERS_COMMUNICATION)

settings.register(
    livesettings.BooleanValue(
        LOGIN_PROVIDERS,
        'TERMS_CONSENT_REQUIRED',
        default=False,
        description=_('Acceptance of terms required at registration'),
        help_text=settings.get_related_settings_info(
            ('FLATPAGES', 'TERMS', True))))

settings.register(
    livesettings.BooleanValue(
        LOGIN_PROVIDERS,
        'SIGNIN_WORDPRESS_SITE_ENABLED',
        default=False,
        description=_('Activate to allow login with self-hosted '
                      'wordpress site'),
        help_text=_('to activate this feature you must fill out the wordpress '
                    'xml-rpc setting bellow')))

settings.register(
コード例 #35
0
ファイル: site_settings.py プロジェクト: Grahack/askbot-devel
from django.conf import settings as django_settings
from django.core.validators import ValidationError, validate_email
import re
from urlparse import urlparse


QA_SITE_SETTINGS = livesettings.ConfigurationGroup(
                    'QA_SITE_SETTINGS',
                    _('URLS, keywords & greetings'),
                    super_group = CONTENT_AND_UI
                )

settings.register(
    livesettings.StringValue(
        QA_SITE_SETTINGS,
        'APP_TITLE',
        default=u'Askbot: Open Source Q&A Forum',
        description=_('Site title for the Q&A forum')
    )
)

settings.register(
    livesettings.StringValue(
        QA_SITE_SETTINGS,
        'APP_KEYWORDS',
        default=u'Askbot,forum,community',
        description=_('Comma separated list of Q&A site keywords')
    )
)

settings.register(
    livesettings.StringValue(
コード例 #36
0
ファイル: feedback.py プロジェクト: zouyxdut/boism_org
    'FEEDBACK',
    _('Feedback settings'),
    super_group=LOGIN_USERS_COMMUNICATION
)

FEEDBACK_MODE_CHOICES = (
    ('open', _('Anyone')),
    ('auth-only', _('Only authenticated users')),
    ('disabled', _('Nobody, disable feedback form'))
)

settings.register(
    livesettings.StringValue(
        FEEDBACK,
        'FEEDBACK_MODE',
        default='open',
        choices=FEEDBACK_MODE_CHOICES,
        description=_('Who can send feedback')
    )
)


settings.register(
    livesettings.StringValue(
        FEEDBACK,
        'FEEDBACK_SITE_URL',
        description=_('Feedback site URL'),
        help_text=_(
            'If left empty, a simple internal feedback form '
            'will be used instead'
        )
コード例 #37
0
"""
from askbot.conf.settings_wrapper import settings
from askbot.conf.super_groups import EXTERNAL_SERVICES
from askbot.deps.livesettings import ConfigurationGroup, BooleanValue
from django.utils.translation import ugettext_lazy as _

SOCIAL_SHARING = ConfigurationGroup(
            'SOCIAL_SHARING',
            _('Content sharing'), 
            super_group = EXTERNAL_SERVICES
        )

settings.register(
    BooleanValue(
        SOCIAL_SHARING,
        'RSS_ENABLED',
        default=True,
        description=_('Check to enable RSS feeds')
    )
)

settings.register(
    BooleanValue(
        SOCIAL_SHARING,
        'ENABLE_SHARING_TWITTER',
        default=True,
        description=_('Check to enable sharing of questions on Twitter')
    )
)

settings.register(
    BooleanValue(
コード例 #38
0
from django.utils.translation import ugettext_lazy as _
from django.conf import settings as django_settings

from askbot.conf.settings_wrapper import settings
from askbot.conf.super_groups import CONTENT_AND_UI
from askbot.deps import livesettings

QA_SITE_SETTINGS = livesettings.ConfigurationGroup(
    'QA_SITE_SETTINGS',
    _('URLS, keywords & greetings'),
    super_group=CONTENT_AND_UI)

settings.register(
    livesettings.StringValue(QA_SITE_SETTINGS,
                             'APP_TITLE',
                             default=_('My site'),
                             description=_('Site title for the Q&A forum')))

settings.register(
    livesettings.StringValue(
        QA_SITE_SETTINGS,
        'APP_KEYWORDS',
        default=u'Boism,forum,community',
        description=_('Comma separated list of Q&A site keywords')))

settings.register(
    livesettings.StringValue(
        QA_SITE_SETTINGS,
        'APP_COPYRIGHT',
        default='Copyright Askbot, 2010-2011.',
コード例 #39
0
KARMA_AND_BADGE_VISIBILITY = livesettings.ConfigurationGroup(
    'KARMA_AND_BADGE_VISIBILITY',
    _('Karma & Badge visibility'),
    super_group=REP_AND_BADGES
)


settings.register(
    livesettings.StringValue(
        KARMA_AND_BADGE_VISIBILITY,
        'KARMA_MODE',
        default='public',
        choices=(
            ('public', 'show publicly'),
            ('private', 'show to owners only'),
            ('hidden', 'hide completely'),
        ),  # TODO: Later implement hidden mode
        description=_("Visibility of karma"),
        clear_cache=True,
        help_text=_(
            "User's karma may be shown publicly or only to the owners"
        )
    )
)

settings.register(
    livesettings.StringValue(
        KARMA_AND_BADGE_VISIBILITY,
        'BADGES_MODE',
        default='public',
        choices=(
コード例 #40
0
Settings for minimum reputation required for 
a variety of actions on the askbot askbot
"""
from askbot.conf.settings_wrapper import settings
from askbot.conf.super_groups import REP_AND_BADGES
from askbot.deps import livesettings
from django.utils.translation import ugettext as _

MIN_REP = livesettings.ConfigurationGroup('MIN_REP',
                                          _('Karma thresholds'),
                                          ordering=0,
                                          super_group=REP_AND_BADGES)

settings.register(
    livesettings.IntegerValue(MIN_REP,
                              'MIN_REP_TO_VOTE_UP',
                              default=5,
                              description=_('Upvote')))

settings.register(
    livesettings.IntegerValue(MIN_REP,
                              'MIN_REP_TO_VOTE_DOWN',
                              default=50,
                              description=_('Downvote')))

settings.register(
    livesettings.IntegerValue(
        MIN_REP,
        'MIN_REP_TO_ANSWER_OWN_QUESTION',
        default=5,
        description=_('Answer own question immediately')))
コード例 #41
0
ファイル: email.py プロジェクト: kazeevn/botan
from django.utils.translation import ugettext as _
from django.conf import settings as django_settings

EMAIL_SUBJECT_PREFIX = getattr(django_settings, "EMAIL_SUBJECT_PREFIX", "")

EMAIL = livesettings.ConfigurationGroup(
    "EMAIL", _("Email and email alert settings"), super_group=LOGIN_USERS_COMMUNICATION
)

settings.register(
    livesettings.StringValue(
        EMAIL,
        "EMAIL_SUBJECT_PREFIX",
        default=EMAIL_SUBJECT_PREFIX,
        description=_("Prefix for the email subject line"),
        help_text=_(
            "This setting takes default from the django setting"
            "EMAIL_SUBJECT_PREFIX. A value entered here will override"
            "the default."
        ),
    )
)

settings.register(
    livesettings.IntegerValue(
        EMAIL, "MAX_ALERTS_PER_EMAIL", default=7, description=_("Maximum number of news entries in an email alert")
    )
)

settings.register(
    livesettings.StringValue(
コード例 #42
0
"""
from askbot.conf.settings_wrapper import settings
from askbot.conf.super_groups import EXTERNAL_SERVICES
from askbot.deps.livesettings import ConfigurationGroup, BooleanValue, StringValue
from django.utils.translation import ugettext_lazy as _

SOCIAL_SHARING = ConfigurationGroup(
            'SOCIAL_SHARING',
            _('Content sharing'), 
            super_group = EXTERNAL_SERVICES
        )

settings.register(
    BooleanValue(
        SOCIAL_SHARING,
        'RSS_ENABLED',
        default=True,
        description=_('Check to enable RSS feeds')
    )
)

settings.register(
    StringValue(
        SOCIAL_SHARING,
        'SHARING_SUFFIX_TEXT',
        default='',
        description=_('Hashtag or suffix to sharing messages')
    )
)

settings.register(
    BooleanValue(
コード例 #43
0
from django.conf import settings as django_settings
from django.core.validators import ValidationError, validate_email
import re
from urlparse import urlparse


QA_SITE_SETTINGS = livesettings.ConfigurationGroup(
                    'QA_SITE_SETTINGS',
                    _('URLS, keywords & greetings'),
                    super_group = CONTENT_AND_UI
                )

settings.register(
    livesettings.StringValue(
        QA_SITE_SETTINGS,
        'APP_TITLE',
        default=u'Nordic Developer Zone',
        description=_('Site title for the Q&A forum')
    )
)

settings.register(
    livesettings.StringValue(
        QA_SITE_SETTINGS,
        'APP_KEYWORDS',
        default=u'Nordic, nRF51822, nRF51422, nRF51, nRF8001, nRF8002, nRF24LE1, nRF24LU1+, questions, answers, help, discussion',
        description=_('Comma separated list of Q&A site keywords')
    )
)

settings.register(
    livesettings.StringValue(
コード例 #44
0
from askbot.conf.settings_wrapper import settings
from livesettings.values import ConfigurationGroup, LongStringValue
from askbot.conf.super_groups import CONTENT_AND_UI

FLATPAGES = ConfigurationGroup(
    'FLATPAGES',
    _('Messages and pages - about, privacy policy, etc.'),
    super_group=CONTENT_AND_UI
)

settings.register(
    LongStringValue(
        FLATPAGES,
        'FORUM_ABOUT',
        description=_('Text of the Q&amp;A forum About page (html format)'),
        default='',
        localized=True,
        help_text=_('Save, then <a href="http://validator.w3.org/">'
                    'use HTML validator</a> on the "about" page to check '
                    'your input.')
    )
)

settings.register(
    LongStringValue(
        FLATPAGES,
        'AUTHENTICATION_PAGE_MESSAGE',
        description=_('Message to display on the authentication pages'),
        default='',
        localized=True,
        help_text=_('Markdown format is accepted')
    )
コード例 #45
0
ファイル: site_settings.py プロジェクト: ASKBOT/askbot-devel
from askbot.conf.settings_wrapper import settings
from askbot.conf.super_groups import CONTENT_AND_UI
from askbot.deps import livesettings


QA_SITE_SETTINGS = livesettings.ConfigurationGroup(
    'QA_SITE_SETTINGS',
    _('URLS, keywords & greetings'),
    super_group=CONTENT_AND_UI
)

settings.register(
    livesettings.StringValue(
        QA_SITE_SETTINGS,
        'APP_TITLE',
        default=_('My site'),
        description=_('Site title for the Q&A forum')
    )
)

settings.register(
    livesettings.StringValue(
        QA_SITE_SETTINGS,
        'APP_KEYWORDS',
        default=u'Askbot,forum,community',
        description=_('Comma separated list of Q&A site keywords')
    )
)

settings.register(
    livesettings.StringValue(
コード例 #46
0
from askbot.conf.settings_wrapper import settings
from askbot.conf.super_groups import LOGIN_USERS_COMMUNICATION
from askbot.deps import livesettings
from askbot.deps.livesettings import BooleanValue
from askbot.deps.livesettings import StringValue
from django.utils.translation import ugettext_lazy as _

ACCESS_CONTROL = livesettings.ConfigurationGroup(
    'ACCESS_CONTROL',
    _('Access control settings'),
    super_group=LOGIN_USERS_COMMUNICATION)

settings.register(
    BooleanValue(
        ACCESS_CONTROL,
        'READ_ONLY_MODE_ENABLED',
        default=False,
        description=_('Make site read-only'),
    ))

settings.register(
    StringValue(ACCESS_CONTROL,
                'READ_ONLY_MESSAGE',
                default=_(
                    'The site is temporarily read-only. '
                    'Only viewing of the content is possible at the moment.')))

settings.register(
    livesettings.BooleanValue(
        ACCESS_CONTROL,
        'ASKBOT_CLOSED_FORUM_MODE',
コード例 #47
0
"""
User policy settings
"""
from askbot.conf.settings_wrapper import settings
from askbot.deps import livesettings
from django.utils.translation import ugettext as _

USER_SETTINGS = livesettings.ConfigurationGroup(
                    'USER_SETTINGS',
                    _('User policy settings')
                )

settings.register(
    livesettings.BooleanValue(
        USER_SETTINGS,
        'EDITABLE_SCREEN_NAME',
        default=True,
        description=_('Allow editing user screen name')
    )
)

settings.register(
    livesettings.IntegerValue(
        USER_SETTINGS,
        'MIN_USERNAME_LENGTH',
        hidden=True,
        default=1,
        description=_('Minimum allowed length for screen name')
    )
)

settings.register(
コード例 #48
0
from askbot.conf.super_groups import EXTERNAL_SERVICES
from askbot.deps import livesettings
from django.utils.translation import ugettext_lazy as _
from django.conf import settings as django_settings

EXTERNAL_KEYS = livesettings.ConfigurationGroup(
    'EXTERNAL_KEYS',
    _('Keys for external services'),
    super_group=EXTERNAL_SERVICES)

settings.register(
    livesettings.StringValue(
        EXTERNAL_KEYS,
        'GOOGLE_SITEMAP_CODE',
        description=_('Google site verification key'),
        help_text=_('This key helps google index your site '
                    'please obtain is at '
                    '<a href="%(url)s?hl=%(lang)s">'
                    'google webmasters tools site</a>') % {
                        'url': const.DEPENDENCY_URLS['google-webmaster-tools'],
                        'lang': django_settings.LANGUAGE_CODE,
                    }))

settings.register(
    livesettings.StringValue(
        EXTERNAL_KEYS,
        'GOOGLE_ANALYTICS_KEY',
        description=_('Google Analytics key'),
        help_text=_(
            'Obtain is at <a href="%(url)s">'
            'Google Analytics</a> site, if you '
            'wish to use Google Analytics to monitor '
コード例 #49
0
ファイル: vote_rules.py プロジェクト: allieus/askbot3
from askbot.conf.super_groups import REP_AND_BADGES
from livesettings import ConfigurationGroup, IntegerValue


VOTE_RULES = ConfigurationGroup(
    'VOTE_RULES',
    _('Vote and flag limits'),
    ordering=1,
    super_group=REP_AND_BADGES
)


settings.register(
    IntegerValue(
        VOTE_RULES,
        'MAX_VOTES_PER_USER_PER_DAY',
        default=30,
        description=_('Number of votes a user can cast per day')
    )
)

settings.register(
    IntegerValue(
        VOTE_RULES,
        'MAX_FLAGS_PER_USER_PER_DAY',
        default=5,
        description=_('Maximum number of flags per user per day')
    )
)

settings.register(
    IntegerValue(
コード例 #50
0
ファイル: words.py プロジェクト: chhotaladka/segfault
from askbot.conf.settings_wrapper import settings
from askbot.deps.livesettings import ConfigurationGroup
from askbot.deps.livesettings import values
from django.utils.translation import ugettext_lazy as _
from askbot.skins import utils as skin_utils
from askbot import const
from askbot.conf.super_groups import CONTENT_AND_UI

WORDS = ConfigurationGroup('WORDS',
                           _('Site terms vocabulary'),
                           super_group=CONTENT_AND_UI)

settings.register(
    values.StringValue(WORDS,
                       'WORDS_ASK_YOUR_QUESTION',
                       default=_('Ask Your Question'),
                       description=_('Ask Your Question'),
                       help_text=_('Used on a button'),
                       localized=True))

settings.register(
    values.StringValue(WORDS,
                       'WORDS_ASK_THE_GROUP',
                       default=_('Ask the Group'),
                       description=_('Ask the Group'),
                       help_text=_('Used on a button'),
                       localized=True))

settings.register(
    values.StringValue(WORDS,
                       'WORDS_POST_YOUR_ANSWER',
コード例 #51
0
"""Group settings"""
from askbot.conf.settings_wrapper import settings
from askbot.conf.super_groups import LOGIN_USERS_COMMUNICATION
from askbot.deps import livesettings
from django.utils.translation import ugettext as _

GROUP_SETTINGS = livesettings.ConfigurationGroup(
                    'GROUP_SETTINGS',
                    _('Group settings'),
                    super_group = LOGIN_USERS_COMMUNICATION
                )

settings.register(
    livesettings.BooleanValue(
        GROUP_SETTINGS,
        'GROUPS_ENABLED',
        default = False,
        description = _('Enable user groups'),
    )
)

def group_name_update_callback(old_name, new_name):
    from askbot.models.tag import clean_group_name
    from askbot.models import Group
    cleaned_new_name = clean_group_name(new_name.strip())

    if new_name == '':
        #name cannot be empty
        return old_name

    group = Group.objects.get_global_group()
    group.name = cleaned_new_name
コード例 #52
0
ファイル: email.py プロジェクト: chhotaladka/segfault
from askbot.conf.settings_wrapper import settings
from askbot.conf.super_groups import LOGIN_USERS_COMMUNICATION
from askbot.deps import livesettings
from askbot import const

EMAIL_SUBJECT_PREFIX = getattr(django_settings, 'EMAIL_SUBJECT_PREFIX', '')

EMAIL = livesettings.ConfigurationGroup('EMAIL',
                                        _('Email and email alert settings'),
                                        super_group=LOGIN_USERS_COMMUNICATION)

settings.register(
    livesettings.StringValue(
        EMAIL,
        'EMAIL_SUBJECT_PREFIX',
        default=EMAIL_SUBJECT_PREFIX,
        description=_('Prefix for the email subject line'),
        help_text=_('This setting takes default from the django setting '
                    'EMAIL_SUBJECT_PREFIX. A value entered here will override '
                    'the default.')))


def get_default_admin_email():
    try:
        return django_settings.ADMINS[0][1]
    except (AttributeError, IndexError):
        return ''


settings.register(
    livesettings.StringValue(
コード例 #53
0
    return new_value


SITE_MODES = ConfigurationGroup(
                    'SITE_MODES',
                    _('Bootstrap mode'),
                    super_group = REP_AND_BADGES
                )

settings.register(
    BooleanValue(
        SITE_MODES,
        'ACTIVATE_LARGE_SITE_MODE',
        default=False,
        description=_(
            'Activate a "Large site" mode'),
        help_text=_(
            "\"Large site\" mode increases reputation and certain badge "
            "thresholds, to values, more suitable "
            "for the larger communities, "
            "<strong>WARNING:</strong> your current values for "
            "Minimum reputation, "
            "Badge Settings and "
            "Vote Rules will "
            "be changed after you modify this setting."
        ),
        update_callback=bootstrap_callback
    )
)
コード例 #54
0
from askbot.conf.settings_wrapper import settings
from askbot.conf.super_groups import LOGIN_USERS_COMMUNICATION
from askbot.deps import livesettings
from django.utils.translation import ugettext_lazy as _
import re

FEEDBACK = livesettings.ConfigurationGroup(
    'FEEDBACK', _('Feedback settings'), super_group=LOGIN_USERS_COMMUNICATION)

FEEDBACK_MODE_CHOICES = (('open', _('Anyone')),
                         ('auth-only', _('Only authenticated users')),
                         ('disabled', _('Nobody, disable feedback form')))

settings.register(
    livesettings.StringValue(FEEDBACK,
                             'FEEDBACK_MODE',
                             default='open',
                             choices=FEEDBACK_MODE_CHOICES,
                             description=_('Who can send feedback')))

settings.register(
    livesettings.StringValue(
        FEEDBACK,
        'FEEDBACK_SITE_URL',
        description=_('Feedback site URL'),
        help_text=_('If left empty, a simple internal feedback form '
                    'will be used instead')))


def feedback_emails_callback(old_value, new_value):
    """validates the fedback emails list"""
    emails = []
コード例 #55
0
ファイル: forum_data_rules.py プロジェクト: maxwward/SCOPE
FORUM_DATA_RULES = livesettings.ConfigurationGroup(
                        'FORUM_DATA_RULES',
                        _('Data entry and display rules'),
                        super_group = DATA_AND_FORMATTING
                    )

EDITOR_CHOICES = (
    ('markdown', 'markdown'),
    ('tinymce', 'WISYWIG (tinymce)')
)

settings.register(
    livesettings.StringValue(
        FORUM_DATA_RULES,
        'EDITOR_TYPE',
        default = 'markdown',
        choices = EDITOR_CHOICES,
        description = _('Editor for the posts')
    )
)

settings.register(
    livesettings.BooleanValue(
        FORUM_DATA_RULES,
        'ENABLE_VIDEO_EMBEDDING',
        default = False,
        description = _('Enable embedding videos. '),
        help_text = _(
            '<em>Note: please read <a href="%(url)s">read this</a> first.</em>'
        ) % {'url': const.DEPENDENCY_URLS['embedding-video']}
    )
コード例 #56
0
        for key, value in LARGE_SITE_MODE_SETTINGS.items():
            settings.update(key, value)

    else:
        for key in LARGE_SITE_MODE_SETTINGS:
            settings.reset(key)

    return new_value


SITE_MODES = ConfigurationGroup('SITE_MODES',
                                _('Bootstrap mode'),
                                super_group=REP_AND_BADGES)

settings.register(
    BooleanValue(
        SITE_MODES,
        'ACTIVATE_LARGE_SITE_MODE',
        default=False,
        description=_('Activate a "Large site" mode'),
        help_text=_(
            "\"Large site\" mode increases reputation and certain badge "
            "thresholds, to values, more suitable "
            "for the larger communities, "
            "<strong>WARNING:</strong> your current values for "
            "Minimum reputation, "
            "Badge Settings and "
            "Vote Rules will "
            "be changed after you modify this setting."),
        update_callback=bootstrap_callback))
コード例 #57
0
ファイル: words.py プロジェクト: rve/bookex
from django.utils.translation import ugettext_lazy as _
from askbot.skins import utils as skin_utils
from askbot import const
from askbot.conf.super_groups import CONTENT_AND_UI

WORDS = ConfigurationGroup(
                    'WORDS',
                    _('Site terms vocabulary'),
                    super_group = CONTENT_AND_UI
                )

settings.register(
    values.StringValue(
        WORDS,
        'WORDS_ASK_YOUR_QUESTION',
        default=_('Exchange Your Book'),
        description=_('Ask Your Question'),
        help_text=_('Used on a button')
    )
)

settings.register(
    values.StringValue(
        WORDS,
        'WORDS_PLEASE_ENTER_YOUR_QUESTION',
        default=_('Please publish your book here'),
        description=_('Please enter your question'),
    )
)

settings.register(
コード例 #58
0
"""
from askbot.conf.settings_wrapper import settings
from askbot.deps.livesettings import ConfigurationGroup
from askbot.deps.livesettings import values
from django.utils.translation import ugettext_lazy as _
from askbot.conf.super_groups import CONTENT_AND_UI
SIDEBAR_QUESTION = ConfigurationGroup(  #shitty name - why sidebar?
    'SIDEBAR_QUESTION',
    _('Question page banners and sidebar'),
    super_group=CONTENT_AND_UI)

settings.register(
    values.LongStringValue(
        SIDEBAR_QUESTION,
        'QUESTION_PAGE_TOP_BANNER',
        description=_('Top banner'),
        default='',
        help_text=_('When using this option, please '
                    'use the HTML validation service to make sure that '
                    'your input is valid and works well in all browsers.')))

settings.register(
    values.BooleanValue(
        SIDEBAR_QUESTION,
        'QUESTION_PAGE_TOP_BANNER_ANON_ONLY',
        default=False,
        description=_('Show above only to anonymous users'),
    ))

settings.register(
    values.LongStringValue(
コード例 #59
0
    if url.startswith('/'):
        return url

    validate = URLValidator()
    try:
        validate(url)
        return url
    except ValidationError:
        raise ValueError(_('Please enter a valid url'))

settings.register(
    values.StringValue(
        GENERAL_SKIN_SETTINGS,
        'LOGO_DESTINATION_URL',
        default = '',
        description = _('Custom destination URL for the logo'),
        update_callback=logo_destination_callback
    )
)


settings.register(
    values.ImageValue(
        GENERAL_SKIN_SETTINGS,
        'SITE_LOGO_URL',
        description = _('Q&amp;A site logo'),
        help_text = _(
                        'To change the logo, select new file, '
                        'then submit this whole form.'
                    ),
コード例 #60
0
ファイル: site_settings.py プロジェクト: coffenbacher/Voyager
from askbot.conf.super_groups import CONTENT_AND_UI
from askbot.deps import livesettings
from django.utils.translation import ugettext_lazy as _
from django.conf import settings as django_settings
from django.core.validators import ValidationError, validate_email
import re
from urlparse import urlparse

QA_SITE_SETTINGS = livesettings.ConfigurationGroup(
    'QA_SITE_SETTINGS',
    _('URLS, keywords & greetings'),
    super_group=CONTENT_AND_UI)

settings.register(
    livesettings.StringValue(QA_SITE_SETTINGS,
                             'APP_TITLE',
                             default=_('My site'),
                             description=_('Site title for the Q&A forum')))

settings.register(
    livesettings.StringValue(
        QA_SITE_SETTINGS,
        'APP_KEYWORDS',
        default=u'Askbot,forum,community',
        description=_('Comma separated list of Q&A site keywords')))

settings.register(
    livesettings.StringValue(
        QA_SITE_SETTINGS,
        'APP_COPYRIGHT',
        default='Copyright Askbot, 2010-2011.',