Beispiel #1
0
def copy_file(box_name, id, rev, user_id):
    user = current_user
    if user_id == str(current_user.id):
        user_id = None
    else:
        if not current_user.is_consultant:
            raise Forbidden()
        user = User.by_id(user_id)

    filename = request.form.get('filename', False)
    if (not filename):
        flash(_("copy not possible"), 'error')
        return redirect(
            url_for("boxes.files", box_name=box_name, user_id=user_id))

    customer_id = request.form.get('boxes', False)
    if customer_id:
        customer = User.by_id(customer_id)
        user = current_user
        couch_box = get_couch_box_db(user, 'file')
        target_box_name = get_couch_box_db(customer, 'download')
    else:
        customer = current_user
        user = User.by_id(user_id)
        couch_box = get_couch_box_db(user, 'upload')
        target_box_name = get_couch_box_db(customer, 'file')

    user_couch = CouchFileBox(current_app.config.get('COUCH_DB_URL'),
                              couch_box)
    user_couch.copy(id, filename, target_box_name=target_box_name)

    flash(_("file copied"), 'success')
    return redirect(url_for("boxes.files", box_name=box_name, user_id=user_id))
Beispiel #2
0
def copy_file(box_name, id, rev, user_id):
    user = current_user
    if user_id == str(current_user.id):
        user_id = None
    else:
        if not current_user.is_consultant:
            raise Forbidden()
        user = User.by_id(user_id)

    filename = request.form.get('filename', False)
    if (not filename):
        flash(_("copy not possible"), 'error')
        return redirect(url_for("boxes.files", box_name=box_name, user_id=user_id))

    customer_id = request.form.get('boxes', False)
    if customer_id:
        customer = User.by_id(customer_id)
        user = current_user
        couch_box = get_couch_box_db(user, 'file')
        target_box_name = get_couch_box_db(customer, 'download')
    else:
        customer = current_user
        user = User.by_id(user_id)
        couch_box = get_couch_box_db(user, 'upload')
        target_box_name = get_couch_box_db(customer, 'file')

    user_couch = CouchFileBox(current_app.config.get('COUCH_DB_URL'), couch_box)
    user_couch.copy(id, filename, target_box_name=target_box_name)

    flash(_("file copied"), 'success')
    return redirect(url_for("boxes.files", box_name=box_name, user_id=user_id))