Example #1
0
from falias.sql import Sql

from morias.core.render import generate_page
from morias.core.login import check_login, check_right, check_referer

from morias.lib.menu import Item
from morias.lib.pager import Pager
from morias.lib.jobs import Job, clean_zombie

from morias.admin import system_menu

_check_conf = (
    ('morias', 'db', Sql),                      # database configuration
)

system_menu.append(Item('/admin/jobs', label="Background Jobs",
                        rights=['super']))


@app.pre_process()
def jobs_clean_zombies(req):
    clean_zombie(req)


@app.route('/admin/jobs')
def admin_jobs(req):
    check_login(req)
    check_right(req, 'super')

    pager = Pager()
    pager.bind(req.args)
Example #2
0
from morias import login, jobs

__requires = (login, jobs)

_check_conf = (
    ('morias', 'db', Sql),                          # database configuration
    ('attachments', 'path', str),
    ('attachments', 'thumb_path', str, ''),
    ('attachments', 'thumb_size', Size, '320x200', True)
)

R_ADMIN = 'attachments_modify'
module_rights = ['attachments_author', 'attachments_listall', R_ADMIN]
rights.update(module_rights)

system_menu.append(Item('/admin/attachments', label="Attachments",
                        symbol='attachments', rights=module_rights))

app.set_filter('attachment', r'[\w\.]+', uni)
time_format = "%a, %d %b %Y %X GMT"

# TODO: core.test.sql.count (table)
#                    .data ()        # none, number, float, string, unicode
#                    .sqlinjection ()
#                .dirs ((dir, dir))


def js_items(req, **kwargs):
    # size of thumb could be set from request
    thumb_size = req.args.getfirst('thumb_size', '320x200', str)
    pager = Pager(limit=-1)
    items = []
Example #3
0
from morias.admin import system_menu

_check_conf = (
    # morias common block
    ('morias', 'db', Sql),
    ('options', 'timestamp', unicode, 'tmp/options.timestamp'),
)


def _call_conf(cfg, parser):
    refresh_options(cfg, cfg.options_timestamp)

timestamp = -1

module_right = 'super'
system_menu.append(Item('/admin/system/options', label="Options",
                        symbol="options", rights=[module_right]))


@app.pre_process()
def check_options(req):
    if req.uri_rule in ('_debug_info_', '_send_file_', '_directory_index_'):
        return  # this methods no need this pre process
    refresh_options(req, req.cfg.options_timestamp)
# emddef


def refresh_options(req, cfg_timestamp):
    """ refresh options from db when timestamp is change """
    global timestamp

    check = check_timestamp(req, cfg_timestamp)