def add_post():
    vm = AddViewModel()

    if not vm.user:
        return flask.redirect('/account/login')

    vm.validate()

    if vm.error:
        return vm.to_dict()

    ignore = True if request.form.getlist('skipped') == ['on'] else False
    exists = router_service.add_router(vm.router_name, vm.router_ip,
                                       vm.username, vm.password, ignore)
    add_file_service.autoUpdater(vm.router_name, vm.router_ip, vm.username,
                                 vm.password)
    add_file_service.ssh_key(vm.username, vm.password, vm.router_ip)

    if exists:
        vm.error = "There was an error in creating the router, please check that router is in Table and that backup directory was created."
        return vm.to_dict()

    resp = flask.redirect('/router_table')
    cookie_auth.set_auth(resp, vm.user_id)

    return resp
def index():
    vm = IndexViewModel()

    if not vm.user:
        return flask.redirect('/account/login')

    resp = flask.redirect('/router_table')
    cookie_auth.set_auth(resp, vm.user_id)

    return resp
def remove_post():
    vm = RemoveViewModel()

    if not vm.user:
        return flask.redirect('/account/login')

    router_service.remove_router(vm.router_to_remove)

    resp = flask.redirect('/router_table')
    cookie_auth.set_auth(resp, vm.user_id)

    return resp
Beispiel #4
0
def login_post():
    vm = LoginViewModel()
    vm.validate()

    if vm.error:
        return vm.to_dict()

    user = user_service.login_user(vm.email, vm.password)
    if not user:
        vm.error = "The account does not exist or the password is wrong."
        return vm.to_dict()

    resp = flask.redirect('/router_table')
    cookie_auth.set_auth(resp, user.id)

    return resp
Beispiel #5
0
def register_post():
    vm = RegisterViewModel()

    vm.validate()

    if vm.error:
        return vm.to_dict()

    user = user_service.create_user(vm.name, vm.email, vm.password)
    if not user:
        vm.error = 'The account could not be created.'
        return vm.to_dict()

    resp = flask.redirect('/router_table')
    cookie_auth.set_auth(resp, user.id)

    return resp
def update_post():
    vm = UpdateViewModel()

    if not vm.user:
        return flask.redirect('/account/login')

    router_details = router_service.get_router_details(vm.router_to_update)

    router_name = vm.router_to_update if vm.router_name == '' else vm.router_name
    router_ip = router_details.router_ip if vm.router_ip == '' else vm.router_ip
    username = router_details.username if vm.username == '' else vm.username
    password = router_details.password if vm.password == '' else vm.password
    ignore = True if request.form.getlist('skipped') == ['on'] else False
    router_service.update_router(vm.router_to_update, router_name, router_ip,
                                 username, password, ignore)

    resp = flask.redirect('/router_table')
    cookie_auth.set_auth(resp, vm.user_id)

    return resp