web/webconfig.py
changeset 5323 329b4f6d18b4
parent 5283 9ad0eaa09d34
child 5328 c51e8f62652a
equal deleted inserted replaced
5322:c0b7687bce3d 5323:329b4f6d18b4
    68     options = merge_options(CubicWebConfiguration.options + (
    68     options = merge_options(CubicWebConfiguration.options + (
    69         ('anonymous-user',
    69         ('anonymous-user',
    70          {'type' : 'string',
    70          {'type' : 'string',
    71           'default': None,
    71           'default': None,
    72           'help': 'login of the CubicWeb user account to use for anonymous user (if you want to allow anonymous)',
    72           'help': 'login of the CubicWeb user account to use for anonymous user (if you want to allow anonymous)',
    73           'group': 'main', 'inputlevel': 1,
    73           'group': 'main', 'level': 1,
    74           }),
    74           }),
    75         ('anonymous-password',
    75         ('anonymous-password',
    76          {'type' : 'string',
    76          {'type' : 'string',
    77           'default': None,
    77           'default': None,
    78           'help': 'password of the CubicWeb user account to use for anonymous user, '
    78           'help': 'password of the CubicWeb user account to use for anonymous user, '
    79           'if anonymous-user is set',
    79           'if anonymous-user is set',
    80           'group': 'main', 'inputlevel': 1,
    80           'group': 'main', 'level': 1,
    81           }),
    81           }),
    82         ('query-log-file',
    82         ('query-log-file',
    83          {'type' : 'string',
    83          {'type' : 'string',
    84           'default': None,
    84           'default': None,
    85           'help': 'web instance query log file',
    85           'help': 'web instance query log file',
    86           'group': 'main', 'inputlevel': 2,
    86           'group': 'main', 'level': 2,
    87           }),
    87           }),
    88         # web configuration
    88         # web configuration
    89         ('https-url',
    89         ('https-url',
    90          {'type' : 'string',
    90          {'type' : 'string',
    91           'default': None,
    91           'default': None,
    95           'https site. IMPORTANTE NOTE: to do this work, you should have your '\
    95           'https site. IMPORTANTE NOTE: to do this work, you should have your '\
    96           'apache redirection include "https" as base url path so cubicweb can '\
    96           'apache redirection include "https" as base url path so cubicweb can '\
    97           'differentiate between http vs https access. For instance: \n'\
    97           'differentiate between http vs https access. For instance: \n'\
    98           'RewriteRule ^/demo/(.*) http://127.0.0.1:8080/https/$1 [L,P]\n'\
    98           'RewriteRule ^/demo/(.*) http://127.0.0.1:8080/https/$1 [L,P]\n'\
    99           'where the cubicweb web server is listening on port 8080.',
    99           'where the cubicweb web server is listening on port 8080.',
   100           'group': 'main', 'inputlevel': 2,
   100           'group': 'main', 'level': 2,
   101           }),
   101           }),
   102         ('auth-mode',
   102         ('auth-mode',
   103          {'type' : 'choice',
   103          {'type' : 'choice',
   104           'choices' : ('cookie', 'http'),
   104           'choices' : ('cookie', 'http'),
   105           'default': 'cookie',
   105           'default': 'cookie',
   106           'help': 'authentication mode (cookie / http)',
   106           'help': 'authentication mode (cookie / http)',
   107           'group': 'web', 'inputlevel': 1,
   107           'group': 'web', 'level': 1,
   108           }),
   108           }),
   109         ('realm',
   109         ('realm',
   110          {'type' : 'string',
   110          {'type' : 'string',
   111           'default': 'cubicweb',
   111           'default': 'cubicweb',
   112           'help': 'realm to use on HTTP authentication mode',
   112           'help': 'realm to use on HTTP authentication mode',
   113           'group': 'web', 'inputlevel': 2,
   113           'group': 'web', 'level': 2,
   114           }),
   114           }),
   115         ('http-session-time',
   115         ('http-session-time',
   116          {'type' : 'int',
   116          {'type' : 'int',
   117           'default': 0,
   117           'default': 0,
   118           'help': "duration in minutes of the cookie used to store session "
   118           'help': "duration in minutes of the cookie used to store session "
   119           "identifier. If 0, the cookie will expire when the user exist its "
   119           "identifier. If 0, the cookie will expire when the user exist its "
   120           "browser. Should be 0 or greater than repository\'s session-time.",
   120           "browser. Should be 0 or greater than repository\'s session-time.",
   121           'group': 'web', 'inputlevel': 2,
   121           'group': 'web', 'level': 2,
   122           }),
   122           }),
   123         ('cleanup-session-time',
   123         ('cleanup-session-time',
   124          {'type' : 'int',
   124          {'type' : 'int',
   125           'default': 1440,
   125           'default': 1440,
   126           'help': 'duration of inactivity in minutes after which a connection '
   126           'help': 'duration of inactivity in minutes after which a connection '
   127           'will be closed, to limit memory consumption (avoid sessions that '
   127           'will be closed, to limit memory consumption (avoid sessions that '
   128           'never expire and cause memory leak when http-session-time is 0). '
   128           'never expire and cause memory leak when http-session-time is 0). '
   129           'So even if http-session-time is 0 and the user don\'t close his '
   129           'So even if http-session-time is 0 and the user don\'t close his '
   130           'browser, he will have to reauthenticate after this time of '
   130           'browser, he will have to reauthenticate after this time of '
   131           'inactivity. Default to 24h.',
   131           'inactivity. Default to 24h.',
   132           'group': 'web', 'inputlevel': 2,
   132           'group': 'web', 'level': 2,
   133           }),
   133           }),
   134         ('cleanup-anonymous-session-time',
   134         ('cleanup-anonymous-session-time',
   135          {'type' : 'int',
   135          {'type' : 'int',
   136           'default': 5,
   136           'default': 5,
   137           'help': 'Same as cleanup-session-time but specific to anonymous '
   137           'help': 'Same as cleanup-session-time but specific to anonymous '
   138           'sessions. You can have a much smaller timeout here since it will be '
   138           'sessions. You can have a much smaller timeout here since it will be '
   139           'transparent to the user. Default to 5min.',
   139           'transparent to the user. Default to 5min.',
   140           'group': 'web', 'inputlevel': 2,
   140           'group': 'web', 'level': 2,
   141           }),
   141           }),
   142         ('force-html-content-type',
   142         ('force-html-content-type',
   143          {'type' : 'yn',
   143          {'type' : 'yn',
   144           'default': False,
   144           'default': False,
   145           'help': 'force text/html content type for your html pages instead of cubicweb user-agent based'\
   145           'help': 'force text/html content type for your html pages instead of cubicweb user-agent based'\
   146           'deduction of an appropriate content type',
   146           'deduction of an appropriate content type',
   147           'group': 'web', 'inputlevel': 2,
   147           'group': 'web', 'level': 2,
   148           }),
   148           }),
   149         ('embed-allowed',
   149         ('embed-allowed',
   150          {'type' : 'regexp',
   150          {'type' : 'regexp',
   151           'default': None,
   151           'default': None,
   152           'help': 'regular expression matching URLs that may be embeded. \
   152           'help': 'regular expression matching URLs that may be embeded. \
   153 leave it blank if you don\'t want the embedding feature, or set it to ".*" \
   153 leave it blank if you don\'t want the embedding feature, or set it to ".*" \
   154 if you want to allow everything',
   154 if you want to allow everything',
   155           'group': 'web', 'inputlevel': 1,
   155           'group': 'web', 'level': 1,
   156           }),
   156           }),
   157         ('submit-mail',
   157         ('submit-mail',
   158          {'type' : 'string',
   158          {'type' : 'string',
   159           'default': None,
   159           'default': None,
   160           'help': ('Mail used as recipient to report bug in this instance, '
   160           'help': ('Mail used as recipient to report bug in this instance, '
   161                    'if you want this feature on'),
   161                    'if you want this feature on'),
   162           'group': 'web', 'inputlevel': 2,
   162           'group': 'web', 'level': 2,
   163           }),
   163           }),
   164 
   164 
   165         ('language-negociation',
   165         ('language-negociation',
   166          {'type' : 'yn',
   166          {'type' : 'yn',
   167           'default': True,
   167           'default': True,
   168           'help': 'use Accept-Language http header to try to set user '\
   168           'help': 'use Accept-Language http header to try to set user '\
   169           'interface\'s language according to browser defined preferences',
   169           'interface\'s language according to browser defined preferences',
   170           'group': 'web', 'inputlevel': 2,
   170           'group': 'web', 'level': 2,
   171           }),
   171           }),
   172 
   172 
   173         ('print-traceback',
   173         ('print-traceback',
   174          {'type' : 'yn',
   174          {'type' : 'yn',
   175           'default': CubicWebConfiguration.mode != 'system',
   175           'default': CubicWebConfiguration.mode != 'system',
   176           'help': 'print the traceback on the error page when an error occured',
   176           'help': 'print the traceback on the error page when an error occured',
   177           'group': 'web', 'inputlevel': 2,
   177           'group': 'web', 'level': 2,
   178           }),
   178           }),
   179 
   179 
   180         ('captcha-font-file',
   180         ('captcha-font-file',
   181          {'type' : 'string',
   181          {'type' : 'string',
   182           'default': join(CubicWebConfiguration.shared_dir(), 'data', 'porkys.ttf'),
   182           'default': join(CubicWebConfiguration.shared_dir(), 'data', 'porkys.ttf'),
   183           'help': 'True type font to use for captcha image generation (you \
   183           'help': 'True type font to use for captcha image generation (you \
   184 must have the python imaging library installed to use captcha)',
   184 must have the python imaging library installed to use captcha)',
   185           'group': 'web', 'inputlevel': 2,
   185           'group': 'web', 'level': 2,
   186           }),
   186           }),
   187         ('captcha-font-size',
   187         ('captcha-font-size',
   188          {'type' : 'int',
   188          {'type' : 'int',
   189           'default': 25,
   189           'default': 25,
   190           'help': 'Font size to use for captcha image generation (you must \
   190           'help': 'Font size to use for captcha image generation (you must \
   191 have the python imaging library installed to use captcha)',
   191 have the python imaging library installed to use captcha)',
   192           'group': 'web', 'inputlevel': 2,
   192           'group': 'web', 'level': 2,
   193           }),
   193           }),
   194 
   194 
   195         ))
   195         ))
   196 
   196 
   197     def fckeditor_installed(self):
   197     def fckeditor_installed(self):