예제 #1
0
def get(p):
    id = tools.get('id')
    # delete
    es.delete(p['host'], 'core_data', 'datasource', id)
    es.flush(p['host'], 'core_data')

    return tools.redirect(request.referrer)
예제 #2
0
def get(p):
    # load schedule
    schedule_id = p['nav'][-1]
    schedule = es.get(p['host'], 'core_task', 'schedule', schedule_id)
    if not schedule:
        return tools.alert('schedule not found - {}'.format(schedule_id))

    es.delete(p['host'], 'core_task', 'schedule', schedule_id)
    es.flush(p['host'], 'core_task')

    return tools.redirect(request.referrer)
예제 #3
0
def get(p):
    # load task
    task_id = p['nav'][-1]
    p['task'] = es.get(p['host'], 'core_task', 'task', task_id)
    if not p['task']:
        return tools.alert('task not found - {}'.format(task_id))

    es.delete(p['host'], 'core_task', 'task', task_id)
    es.flush(p['host'], 'core_task')

    return tools.redirect(request.referrer)
예제 #4
0
def get(p):
    # Load Action
    action_id = p['nav'][-1]
    p['action'] = es.get(p['host'], 'core_task', 'action', action_id)
    if not p['action']:
        return tools.alert('not valid action id - {}'.format(action_id))

    # delete
    es.delete(p['host'], 'core_task', 'action', p['action']['id'])
    es.flush(p['host'], 'core_task')

    return tools.redirect(request.referrer)
예제 #5
0
def get(p):
    # load rule
    rev_proxy_id = p['nav'][-1]
    rev_proxy = es.get(p['host'], 'core_proxy', 'rev_proxy', rev_proxy_id)
    if not rev_proxy:
        return tools.alert('not valid rev_proxy id - {}'.format(rev_proxy_id))

    # delete
    es.delete(p['host'], 'core_proxy', 'rev_proxy', rev_proxy_id)
    es.flush(p['host'], 'core_proxy')

    return tools.redirect(request.referrer)
예제 #6
0
def get(p):
    # load role
    role_id = p['nav'][-1]
    p['role'] = es.get(p['host'], 'core_nav', 'role', role_id)
    if not p['role']:
        return tools.alert('not valid role id - {}'.format(role_id))

    # delete
    es.delete(p['host'], 'core_nav', 'role', role_id)
    es.flush(p['host'], 'core_nav')

    return tools.redirect(request.referrer)
예제 #7
0
def get(p):
    # load login module
    login_module_id = p['nav'][-1]
    login_module = es.get(p['host'], 'core_nav', 'login_module',
                          login_module_id)
    if not login_module:
        return tools.alert(
            'not valid login module id - {}'.format(login_module_id))

    # deletelogin module
    es.delete(p['host'], 'core_nav', 'login_module', login_module_id)
    es.flush(p['host'], 'core_nav')

    return tools.redirect(request.referrer)
예제 #8
0
def get(p):
    host = p['c']['host']
    index = p['c']['index']

    # load workflow
    workflow_id = p['nav'][-1]
    p['workflow'] = es.get(host, index, 'workflow', workflow_id)
    if not p['workflow']:
        return tools.alert('not valid workflow id - {}'.format(workflow_id))

    # delete
    es.delete(host, index, 'workflow', workflow_id)
    es.flush(host, index)

    return tools.redirect(request.referrer)
예제 #9
0
def get(p):
    site_id = p['nav'][-1]

    # root site can't be deleted
    if site_id == "0":
        return tools.alert("Root site can't be deleted")

    # check if site id is valid
    site = es.get(p['host'], 'core_nav', 'site', site_id)
    if not site:
        return tools.alert("not valid site id: {}".format(site_id))

    es.delete(p['host'], 'core_nav', 'site', site_id)
    es.flush(p['host'], 'core_nav')

    return tools.redirect(request.referrer)
예제 #10
0
def get(p):
    host = p['c']['host']
    index = p['c']['index']

    # load notification
    notification_id = p['nav'][-1]
    p['notification'] = es.get(host, index, 'notification', notification_id)
    if not p['notification']:
        return tools.alert(
            'not valid notification id - {}'.format(notification_id))

    # delete notification
    es.delete(host, index, 'notification', notification_id)
    es.flush(host, index)

    return tools.redirect(request.referrer)
예제 #11
0
def get(p):

    # load navigation
    navigation_id = p['nav'][-1]
    navigation = es.get(p['host'], 'core_nav', 'navigation', navigation_id)
    if not navigation:
        return tools.alert(
            'not valid navigation id - {}'.format(navigation_id))

    # root site can't be edited
    if navigation_id in ["0", "1", "2", "3"]:
        return tools.alert("can't delete system navigation")

    # delete
    es.delete(p['host'], 'core_nav', 'navigation', navigation_id)
    es.flush(p['host'], 'core_nav')

    return tools.redirect(request.referrer)
예제 #12
0
    # load post
    post_id = p['nav'][-1]
    p['post'] = es.get(host, index, 'post', post_id)
    if not p['post']:
        return tools.alert('not valid post id - {}'.format(post_id))

    # init workflow
    wf = tools.get('wf', 'delete')
    p['workflow'] = workflow.init(wf, host, index)

    ######################################################
    # check condition
    if p['workflow'] and p['workflow'].get('condition'):
        try:
            exec(p['workflow']['condition'], globals())
            condition(p)
        except SystemExit:
            pass
        except Exception, e:
            return str(e)
    else:
        # default condition is that only author can edit
        if p['post'].get('created_by') != p['login']:
            return tools.alert('only author can delete')
    ######################################################

    es.delete(host, index, 'post', post_id)
    es.flush(host, index)

    return tools.redirect(p['url'])