コード例 #1
0
def crons():
    filenames = []
    for filename in sorted(glob.glob(os.path.join(upload_dir, '*.gcode'))):
        basename = os.path.basename(filename)
        filenames.append(basename)

    crontab = Crontab(printer)
    crontab.read()

    return {'ng': ng, 'crontab': crontab, 'filenames': filenames}
コード例 #2
0
def post_crons():
    tasks = []
    mapping = {}
    data = bottle.request.POST
    for k, v in data.items():
        if k.startswith('cron_') or k.startswith('file_'):
            k, i = k.split('_')
            task = mapping.setdefault(i, {})
            if k == 'file':
                v = os.path.join(upload_dir, v)
            task[k] = v
    tasks.extend([v for k, v in sorted(mapping.items())])
    if data.get('file'):
        tasks.append({'cron': data.get('cron'),
                      'file': os.path.join(upload_dir, data.get('file'))})
    crontab = Crontab(printer, upload_dir=upload_dir)
    crontab.write(tasks)
    bottle.redirect('/crons')