""" from openode.conf.settings_wrapper import settings from openode.deps.livesettings import ConfigurationGroup, LongStringValue from openode.conf.super_groups import CONTENT_AND_UI from django.utils.translation import ugettext 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.'
""" from openode.conf.settings_wrapper import settings from openode.conf.super_groups import CONTENT_AND_UI from openode.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'OPENODE', description=_('Site title for the Q&A instance') ) ) settings.register( livesettings.StringValue( QA_SITE_SETTINGS, 'APP_SUBTITLE', default=u'smarter knowledge', description=_('Site sub-title for the instance') ) ) settings.register( livesettings.StringValue(
_('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 "Openode" button.'), )) 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 for content moderation and spam control""" from django.utils.translation import ugettext as _ from openode import const from openode.deps import livesettings from openode.conf.settings_wrapper import settings from openode.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")) )
from openode.deps.livesettings import values from django.utils.translation import ugettext as _ from openode.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, 'SIDEBAR_QUESTION_SHOW_TAGS', description = _('Show tag list in sidebar'), help_text = _( 'Uncheck this if you want to hide the tag ' 'list from the sidebar '
from openode.deps.livesettings import values from django.utils.translation import ugettext as _ from django.conf import settings as django_settings from openode.skins import utils as skin_utils from openode import const from openode.conf.super_groups import CONTENT_AND_UI GENERAL_SKIN_SETTINGS = ConfigurationGroup( 'GENERAL_SKIN_SETTINGS', _('Skin, logos and HTML <head> parts'), super_group=CONTENT_AND_UI) 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.'), default='/images/logo.gif', url_resolver=skin_utils.get_media_url)) LANGUAGE_CHOICES = ( ('en', _("English")), ('es', _("Spanish")), ('ca', _("Catalan")), ('de', _("German")), ('el', _("Greek")), ('fi', _("Finnish")), ('fr', _("French")), ('hi', _("Hindi")), ('hu', _("Hungarian")), ('it', _("Italian")),
from openode.deps.livesettings import ConfigurationGroup, LongStringValue from openode.conf.super_groups import CONTENT_AND_UI from django.utils.translation import ugettext 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.'
from openode import const from openode.conf.super_groups import CONTENT_AND_UI GENERAL_SKIN_SETTINGS = ConfigurationGroup( 'GENERAL_SKIN_SETTINGS', _('Skin, logos and HTML <head> parts'), super_group = CONTENT_AND_UI ) 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.' ), default = '/images/logo.gif', url_resolver = skin_utils.get_media_url ) ) LANGUAGE_CHOICES = ( ('en', _("English")), ('es', _("Spanish")), ('ca', _("Catalan")), ('de', _("German")), ('el', _("Greek")), ('fi', _("Finnish")), ('fr', _("French")),
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, 'AUTOFILL_USER_DATA', default=True, description=_('Auto-fill user name, email, etc on registration'), help_text=_('Implemented only for LDAP logins at this point') ) ) settings.register(
from openode.deps import livesettings from openode.conf.settings_wrapper import settings from openode.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') ) )
For example number of times a person can vote each day, etc. """ from openode.conf.settings_wrapper import settings from openode.conf.super_groups import VOTES_AND_FLAGS from openode.deps.livesettings import ConfigurationGroup, IntegerValue, BooleanValue from django.utils.translation import ugettext as _ VOTE_RULES = ConfigurationGroup('VOTE_RULES', _('Vote and flag limits'), ordering=1, super_group=VOTES_AND_FLAGS) 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')))
from openode.conf.settings_wrapper import settings from openode.deps.livesettings import ConfigurationGroup from openode.deps.livesettings import values from django.utils.translation import ugettext as _ from openode.conf.super_groups import CONTENT_AND_UI LEADING_SIDEBAR = ConfigurationGroup( 'LEADING_SIDEBAR', _('Common left sidebar'), super_group = CONTENT_AND_UI ) settings.register( values.BooleanValue( LEADING_SIDEBAR, 'ENABLE_LEADING_SIDEBAR', description = _('Enable left sidebar'), default = False, ) ) settings.register( values.LongStringValue( LEADING_SIDEBAR, 'LEADING_SIDEBAR', description = _('HTML for the left sidebar'), default = '', help_text = _( 'Use this area to enter content at the LEFT sidebar' 'in HTML format. When using this option, please ' 'use the HTML validation service to make sure that ' 'your input is valid and works well in all browsers.'
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, 'AUTOFILL_USER_DATA', default=True, description=_('Auto-fill user name, email, etc on registration'), help_text=_('Implemented only for LDAP logins at this point'))) settings.register( livesettings.BooleanValue( USER_SETTINGS, 'ALLOW_EMAIL_ADDRESS_IN_USERNAME',
from openode.conf.super_groups import EXTERNAL_SERVICES from openode.deps import livesettings from django.utils.translation import ugettext 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 "
""" Social sharing settings """ from openode.conf.settings_wrapper import settings from openode.conf.super_groups import EXTERNAL_SERVICES from openode.deps.livesettings import ConfigurationGroup, BooleanValue from django.utils.translation import ugettext as _ SOCIAL_SHARING = ConfigurationGroup('SOCIAL_SHARING', _('Sharing content on social networks'), super_group=EXTERNAL_SERVICES) settings.register( BooleanValue( SOCIAL_SHARING, 'ENABLE_SHARING_TWITTER', default=True, description=_('Check to enable sharing of questions on Twitter'))) settings.register( BooleanValue( SOCIAL_SHARING, 'ENABLE_SHARING_FACEBOOK', default=True, description=_('Check to enable sharing of questions on Facebook'))) settings.register( BooleanValue( SOCIAL_SHARING, 'ENABLE_SHARING_LINKEDIN', default=True,
from openode.conf.settings_wrapper import settings from openode.deps.livesettings import ConfigurationGroup from openode.deps.livesettings import values from django.utils.translation import ugettext as _ from openode.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_HEADER', description=_('Custom sidebar header'), default='', 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.LongStringValue( SIDEBAR_PROFILE, 'SIDEBAR_PROFILE_FOOTER', description=_('Custom sidebar footer'), default='', help_text=_( 'Use this area to enter content at the BOTTOM of the sidebar' 'in HTML format. When using this option '
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">'
""" from openode.conf.settings_wrapper import settings from openode.deps.livesettings import ConfigurationGroup from openode.deps.livesettings import values from django.utils.translation import ugettext as _ from openode.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, 'SIDEBAR_QUESTION_SHOW_TAGS', description=_('Show tag list in sidebar'), help_text=_('Uncheck this if you want to hide the tag ' 'list from the sidebar '), default=True)) settings.register( values.BooleanValue(SIDEBAR_QUESTION,
""" from openode.conf.settings_wrapper import settings from openode.conf.super_groups import EXTERNAL_SERVICES from openode.deps.livesettings import ConfigurationGroup, BooleanValue from django.utils.translation import ugettext as _ SOCIAL_SHARING = ConfigurationGroup( 'SOCIAL_SHARING', _('Sharing content on social networks'), super_group = EXTERNAL_SERVICES ) settings.register( BooleanValue( SOCIAL_SHARING, 'ENABLE_SHARING_TWITTER', default=True, description=_('Check to enable sharing of questions on Twitter') ) ) settings.register( BooleanValue( SOCIAL_SHARING, 'ENABLE_SHARING_FACEBOOK', default=True, description=_('Check to enable sharing of questions on Facebook') ) ) settings.register( BooleanValue(
""" Sidebar settings """ from openode.conf.settings_wrapper import settings from openode.deps.livesettings import ConfigurationGroup from openode.deps.livesettings import values from django.utils.translation import ugettext as _ from openode.conf.super_groups import CONTENT_AND_UI SIDEBAR_MAIN = ConfigurationGroup( 'SIDEBAR_MAIN', _('Main page sidebar'), super_group=CONTENT_AND_UI ) settings.register( values.IntegerValue( SIDEBAR_MAIN, 'SIDEBAR_MAIN_AVATAR_LIMIT', description=_('Limit how many avatars will be displayed on the sidebar'), default=16 ) )
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.BooleanValue( EMAIL, 'ENABLE_EMAIL_ALERTS', default = True, description = _('Enable email alerts'), ) )
from openode.conf.settings_wrapper import settings from openode.conf.super_groups import LOGIN_USERS_COMMUNICATION from openode.deps import livesettings from django.utils.translation import ugettext as _ ACCESS_CONTROL = livesettings.ConfigurationGroup( 'ACCESS_CONTROL', _('Access control settings'), super_group = LOGIN_USERS_COMMUNICATION ) settings.register( livesettings.BooleanValue( ACCESS_CONTROL, 'OPENODE_CLOSED_FORUM_MODE', default=False, description=_('Allow only registered user to access the forum'), ) ) EMAIL_VALIDATION_CASE_CHOICES = ( ('nothing', _('nothing - not required')), ('see-content', _('access to content')), #'post-content', _('posting content'), ) settings.register( livesettings.StringValue( ACCESS_CONTROL, 'REQUIRE_VALID_EMAIL_FOR', default='nothing',
from openode.conf.settings_wrapper import settings from openode.deps import livesettings from openode import const from openode.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.IntegerValue( FORUM_DATA_RULES, 'MAX_TAG_LENGTH', default=20, description=_('Maximum length of tag (number of characters)') ) ) settings.register( livesettings.IntegerValue( FORUM_DATA_RULES, 'MIN_TITLE_LENGTH', default=3, description=_('Minimum length of title (number of characters)') ) ) settings.register( livesettings.IntegerValue(
Settings for openode data display and entry """ from openode.conf.settings_wrapper import settings from openode.deps import livesettings from openode import const from openode.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.IntegerValue( FORUM_DATA_RULES, 'MAX_TAG_LENGTH', default=20, description=_('Maximum length of tag (number of characters)'))) settings.register( livesettings.IntegerValue( FORUM_DATA_RULES, 'MIN_TITLE_LENGTH', default=3, description=_('Minimum length of title (number of characters)'))) settings.register( livesettings.IntegerValue( FORUM_DATA_RULES, 'MIN_QUESTION_BODY_LENGTH', default=10,
from openode.conf.settings_wrapper import settings from openode.conf.super_groups import VOTES_AND_FLAGS from openode.deps.livesettings import ConfigurationGroup, IntegerValue, BooleanValue from django.utils.translation import ugettext as _ VOTE_RULES = ConfigurationGroup( 'VOTE_RULES', _('Vote and flag limits'), ordering=1, super_group=VOTES_AND_FLAGS ) 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(
""" Sidebar settings """ from openode.conf.settings_wrapper import settings from openode.deps.livesettings import ConfigurationGroup from openode.deps.livesettings import values from django.utils.translation import ugettext as _ from openode.conf.super_groups import CONTENT_AND_UI SIDEBAR_MAIN = ConfigurationGroup('SIDEBAR_MAIN', _('Main page sidebar'), super_group=CONTENT_AND_UI) settings.register( values.IntegerValue( SIDEBAR_MAIN, 'SIDEBAR_MAIN_AVATAR_LIMIT', description=_( 'Limit how many avatars will be displayed on the sidebar'), default=16))
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 "Openode" button.'), ) ) 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(
Q&A website settings - title, desctiption, basic urls keywords """ from openode.conf.settings_wrapper import settings from openode.conf.super_groups import CONTENT_AND_UI from openode.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'OPENODE', description=_('Site title for the Q&A instance'))) settings.register( livesettings.StringValue(QA_SITE_SETTINGS, 'APP_SUBTITLE', default=u'smarter knowledge', description=_('Site sub-title for the instance'))) settings.register( livesettings.StringValue( QA_SITE_SETTINGS, 'APP_KEYWORDS', default=u'Openode,Askbot,CNPROG,forum,community', description=_('Comma separated list of instance keywords')))