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, )
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, )
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)
def test_project_does_not_exist(self): assert projects_service.check_if_project_exists("76543") is False
def test_project_exists(self): assert projects_service.check_if_project_exists("12345") is True