Example #1
0
def edit_costcode_get():
    project_code = flask.request.args.get("project")
    costcode = flask.request.args.get("costcode")
    # check if project exists
    if projects_service.check_if_project_exists(project_code) is False:
        flask.abort(404)
    # check if costcode exists
    if (
        costcode_services.check_if_costcode_exists(
            project_code=project_code, costcode=costcode
        )
        is False
    ):
        flask.abort(404)
    # get project details
    project_details = project_view_services.get_project_details(project_code)
    form = CreateCostcodeForm()
    # get costcode data
    costcode_data = costcode_services.get_costcode_data(
        project_code=project_code, costcode=costcode
    )
    return flask.render_template(
        "admin/edit_costcode.html",
        form=form,
        project_details=project_details,
        costcode_data=costcode_data,
    )
Example #2
0
def create_costcode_get():
    project_code = flask.request.args.get("project")
    # check if project exists
    if projects_service.check_if_project_exists(project_code) is False:
        flask.abort(404)
    form = CreateCostcodeForm()
    # get list of costcode data
    current_costcodes = costcode_services.get_costcodes(project_code)
    return flask.render_template(
        "admin/create_costcode.html",
        form=form,
        project_code=project_code,
        current_costcodes=current_costcodes,
    )
def add_default_costcodes_to_project_post():
    project_code = flask.request.args.get("project")
    if check_if_project_exists(project_code) is False:
        flask.abort(404)
    form = AddDefaultCostcodesForm()
    if form.validate_on_submit():
        print("Tick box is", form.tick_box.data)
        if check_if_project_has_costcodes(project_code):
            flask.flash("Costcodes already exist, defaults cannot be imported")
        elif form.tick_box.data is True:
            print("adding default costcodes to project")
            add_default_costcodes_to_project(project_code)
            flask.redirect(flask.url_for("projects.projects"))
    return flask.render_template(
        "admin/add_default_costcodes_to_project.html", form=form, project=project_code,
    )
def add_default_costcodes_to_project_get():
    project_code = flask.request.args.get("project")
    # check if the project exists
    if check_if_project_exists(project_code) is False:
        flask.abort(404)
    form = AddDefaultCostcodesForm()
    # check if there are existing costcodes
    if check_if_project_has_costcodes(project_code):
        flask.flash(
            "Costcodes already exist, defaults cannot be imported", "alert-danger"
        )
        costcodes_exists = True
    else:
        costcodes_exists = False
    return flask.render_template(
        "admin/add_default_costcodes_to_project.html",
        form=form,
        project=project_code,
        costcodes_exists=costcodes_exists,
    )
Example #5
0
def create_project_post():
    form = CreateProjectForm()
    data = {
        "project_code": form.project_code.data,
        "project_name": form.project_name.data,
    }
    if form.validate_on_submit():
        # check if the project code already exists
        if check_if_project_exists(form.project_code.data):
            flask.flash(
                "Project " + form.project_code.data + " already exists",
                "alert-danger")
        else:
            # commit the data to the database
            admin_services.create_project(data)
            flask.flash("Project " + form.project_code.data + " created",
                        "alert-success")
            # add the default costcodes to the project
            if form.tick_box.data is True:
                admin_services.add_default_costcodes_to_project(
                    data["project_code"])
            return flask.redirect(
                flask.url_for("create_project.create_project_get"))
    return flask.render_template("admin/create_project.html", form=form)
Example #6
0
 def test_project_does_not_exist(self):
     assert projects_service.check_if_project_exists("76543") is False
Example #7
0
 def test_project_exists(self):
     assert projects_service.check_if_project_exists("12345") is True