def dashboard(): tiqets = query(sql_requests.index_tiqet, fetch="all") states = query(sql_requests.index_state, fetch="all") return render_template("dashboard/dashboard.html", title="Dashboard", tiqets=tiqets, states=states)
def delete_state(id_state): result = query(sql_requests.delete_key_state, {"id_state": id_state}) result = query(sql_requests.delete_state, {"id_state": id_state}) if result: status = jsonify(status="state deleted successful", state="success") else: status = jsonify(status="Database has problem.", state="danger") return make_response(status, 200)
def delete_item(id_item): result = query(sql_requests.delete_item, {"id_item": id_item}) result = query(sql_requests.delete_item_2, {"id_item": id_item}) if result: status = jsonify(status="item deleted successful", state="success") else: status = jsonify(status="Database has problem.", state="danger") return make_response(status, 200)
def delete_priority(id_priority): result = query(sql_requests.delete_key_priority, {"id_priority": id_priority}) result = query(sql_requests.delete_priority, {"id_priority": id_priority}) if result: status = jsonify(status="priority deleted successful", state="success") else: status = jsonify(status="Database has problem.", state="danger") return make_response(status, 200)
def category(id_category): value = {"id_category": id_category} category_db = query(sql_requests.show_category, value, fetch="one") items = query(sql_requests.show_item_by_category, value, fetch="all") return render_template( "settings/category/category.html", title="Category", title_setting="Category", category=category_db, items=items, )
def new(): categories_db = query(sql_requests.index_category, fetch="all") priorities_db = query(sql_requests.index_priorities, fetch="all") users_db = query(sql_requests.index_users, fetch="all") return render_template( "new_tiqet/new_tiqet.html", title="Create TiQet", categories=categories_db, priorities=priorities_db, users=users_db, )
def check_credential(): data = request.get_json() if not "auth" in data: status = jsonify( status="need auth", state="danger", ) return make_response(status, 400) auth = data["auth"] if not "username" in auth or not "email" in auth: status = jsonify( status="need email and username object", state="danger", ) return make_response(status, 400) username = query(sql_requests.auth_check_username, {"username": auth["username"]}, fetch="one") if username: status = jsonify( status="Username is alredy take.", username=False, email=False, state="success", ) return make_response(status, 200) email = query(sql_requests.auth_check_email, {"email": auth["email"]}, fetch="one") if email: status = jsonify( status="Email is alredy take.", username=True, email=False, state="success", ) else: status = jsonify( status="All ok", username=True, email=True, state="success", ) return make_response(status, 200)
def create_priority(): data = request.get_json() if not "priority" in data: status = jsonify(status="need priority object", state="danger",) return make_response(status, 400) priority = data["priority"] if ( not "name" in priority and not "level" in priority and not "description" in priority ): status = jsonify( status="need name, level and description object", state="danger", ) return make_response(status, 400) values = { "name": priority["name"], "description": priority["description"], "level": priority["level"], } result = query(sql_requests.create_priority, values) if result: status = jsonify(status="priority create successful", state="success") else: status = jsonify(status="Database has problem.", state="danger") return make_response(status, 200)
def edit_state(id_state): data = request.get_json() if not "state" in data: status = jsonify(status="need state object", state="danger",) return make_response(status, 400) state = data["state"] if not "name" in state and not "display" in state: status = jsonify(status="need name and display value", state="danger",) return make_response(status, 400) if not id_state.isdigit(): status = jsonify(status="url value error", state="danger",) return make_response(status, 400) values = { "name": state["name"], "display": state["display"], "id_state": id_state, } result = query(sql_requests.edit_state, values) if result: status = jsonify(status="state update successful", state="success") else: status = jsonify(status="Database has problem.", state="danger") return make_response(status, 200)
def create_state(): data = request.get_json() if not "state" in data: status = jsonify(status="need state object", state="danger",) return make_response(status, 400) state = data["state"] if not "name" in state: status = jsonify(status="need name and display value", state="danger",) return make_response(status, 400) values = { "name": state["name"], "display": True, } result = query(sql_requests.create_state, values) if result: status = jsonify(status="state create successful", state="success") else: status = jsonify(status="Database has problem.", state="danger") return make_response(status, 200)
def create_label_mon(): data = request.get_json() if not "label" in data: status = jsonify( status="need label object", state="danger", ) return make_response(status, 400) label = data["label"] if not "name" in label and not "color" in label and not "description" in label: status = jsonify( status="need name, level and description string", state="danger", ) return make_response(status, 400) values = { "name": label["name"], "description": label["description"], "color": label["color"], } result = query(sql_requests.create_label, values) if result: status = jsonify(status="label update successful", state="success") else: status = jsonify(status="Database has problem.", state="danger") return make_response(status, 200)
def category_edit(id_category): data = request.get_json() if not "category" in data: status = jsonify(status="error syntaxe json. Need 'category'", state="danger") return make_response(status, 400) category_data = data["category"] if not "name" in category_data or not "description" in category_data: status = jsonify( status="error syntaxe json. Category need 'name' and 'description'", state="danger", ) return make_response(status, 400) values = { "name": category_data["name"], "description": category_data["description"], "id": id_category, } response = query(sql_requests.update_category, values) if response: status = jsonify(status="category has been updated", state="success") return make_response(status, 200) else: status = jsonify(status="sql server has problem", state="danger") return make_response(status, 201)
def create_tiqet(): title = request.form.get("tiqet-title") content = request.form.get("tiqet-description") id_item = request.form.get("tiqet-item") id_priority = request.form.get("tiqet-priority") id_user = request.form.get("tiqet-user") if id_user == "null": id_user = None values = { "title": title, "content": content, "id_item": id_item, "id_priority": id_priority, "id_assigned": id_user, "id_reporter": None, "id_state": 1, } result = query(sql_requests.create_tiqet, values) if result: flash("Tiqet create successful !", "success") return redirect(url_for("dashboard")) else: flash("Database server has problem.", "danger") return redirect(url_for("new"))
def labels(): labels_db = query(sql_requests.index_label, fetch="all") return render_template( "settings/label/labels.html", title="Labels", labels=labels_db, title_setting="Labels", )
def priorities(): priorities_db = query(sql_requests.index_priorities, fetch="all") return render_template( "settings/priority/priorities.html", title="Priorities", priorities=priorities_db, title_setting="Priority", )
def categories(): categories_db = query(sql_requests.index_category, fetch="all") return render_template( "settings/categories/categories.html", title="Categories index", title_setting="Categories", categories=categories_db, )
def create_account(): # nothing to test because all is try in front web username = request.form.get("auth-username") email = request.form.get("auth-email") firstname = request.form.get("auth-firstname") lastname = request.form.get("auth-lastname") password = request.form.get("auth-password") values = { "username": username, "email": email, "firstname": firstname, "lastname": lastname, "password": generate_password_hash(password), } query(sql_requests.auth_create, values) flash("Account create successful! Login.", "success") return redirect(url_for("login"))
def delete_category(id_category): result = query(sql_requests.delete_category, {"id_category": id_category}) if result: status = jsonify(status="category deleted successful", state="success") else: status = jsonify(status="Database has problem.", state="danger") return make_response(status, 200)
def states(): states_db = query(sql_requests.index_state, fetch="all") return render_template( "settings/state/states.html", title="States", states=states_db, title_setting="States", )
def category_new(): name = request.form.get("category_name") description = request.form.get("category_description") # todo -> meilleur verification values = {"name": name, "description": description} result = query(sql_requests.create_category, values) if result: flash("Category create successful !", "success") else: flash("Database server has problem. Try an other time.", "danger") return redirect(url_for("categories"))
def item_edit(id_item): data = request.get_json() item_data = data["item"] values = { "name": item_data["name"], "description": item_data["description"], "id": id_item, } response = query(sql_requests.update_item, values) if response: status = jsonify(status="item has been updated", state="success") return make_response(status, 200) status = jsonify(status="sql server has problem", state="danger") return make_response(status, 201)
def delete_labels_tiqet(id_label, id_tiqet): result = query( sql_requests.delete_tiqet_label_reation, { "id_tiqet": id_tiqet, "id_label": id_label }, ) if result: status = jsonify(status="label deleted successful", state="success") else: status = jsonify(status="Error.", state="success") return make_response(status, 200)
def item_new(): name = request.form.get("item-name") description = request.form.get("item-description") category_id = request.form.get("category-id") values = { "id_category": category_id, "name": name, "description": description } # todo : catch error on front result = query(sql_requests.create_item, values) if result: flash("Item create successful !", "success") else: flash("Can't create item with empty value.", "danger") return redirect(url_for("category", id_category=category_id))
def edit_label(id_label): print("JS SUIS LA PUTE") data = request.get_json() if not "label" in data: status = jsonify( status="need label object", state="danger", ) return make_response(status, 400) label = data["label"] if not "name" in label and not "color" in label and not "description" in label: status = jsonify( status="need name, level and description string", state="danger", ) return make_response(status, 400) if not id_label.isdigit(): status = jsonify( status="url value error", state="danger", ) return make_response(status, 400) values = { "name": label["name"], "description": label["description"], "color": label["color"], "id_label": id_label, } result = query(sql_requests.edit_label, values) if result: status = jsonify(status="label update successful", state="success") else: status = jsonify(status="Database has problem.", state="danger") return make_response(status, 200)
def create_comment(id_tiqet): data = request.get_json() if not "comment" in data: status = jsonify( status="need comment object", state="danger", ) return make_response(status, 400) comment = data["comment"] if not "content" in comment or not "user_hash" in comment: status = jsonify( status="need comment content and user_hash object", state="danger", ) return make_response(status, 400) user = User() if not user.find_by_token(comment["user_hash"]): status = jsonify( status="invalid user hash", state="danger", ) return make_response(status, 200) values = { "id_user": user.user["id_user"], "id_tiqet": id_tiqet, "content": comment["content"], } result = query(sql_requests.create_comment, values) if result: status = jsonify(status="comment create successful", state="success") else: status = jsonify(status="Database has problem.", state="danger") return make_response(status, 200)
def edit_password(self, old_password, new_password): """ edit user password @old_password = string @new_password = string @return = boolean """ print("start") if not new_password or not old_password or not self.user: print( "Warning -> need to have self.user, new_password and old_password" ) return False print("check") if not self.check_password(old_password): return False print("generate") new_password_hash = generate_password_hash(new_password) print("query") result = query( sql_requests.auth_edit_password, { "id_user": self.user["id_user"], "new_password": new_password_hash }, ) print("try") if result: return True print("return") return False
def tiqet(id_tiqet): tiqet_db = query(sql_requests.show_tiqet, {"id_tiqet": id_tiqet}, fetch="one") categories_db = query(sql_requests.index_category, fetch="all") states_db = query(sql_requests.index_state, fetch="all") priorities_db = query(sql_requests.index_priorities, fetch="all") users_db = query(sql_requests.index_users, fetch="all") labels_db = query(sql_requests.index_label, fetch="all") comments_db = query(sql_requests.index_comments, {"id_tiqet": id_tiqet}, fetch="all") return render_template( "tiqet/tiqet.html", tiqet=tiqet_db, comments=comments_db, states=states_db, priorities=priorities_db, users=users_db, categories=categories_db, labels=labels_db, )
def edit_tiqet(id_tiqet): data = request.get_json() if not "tiqet" in data: status = jsonify( status="need tiqet object", state="danger", ) return make_response(status, 400) tiqet = data["tiqet"] request_edit_tiqet = sql_requests.tiqet_edit_request(tiqet, id_tiqet) result = query(request_edit_tiqet, tiqet) if result: status = jsonify(status="tiqet's update successful", state="success") else: status = jsonify(status="Database server has problem !", state="danger") return make_response(status, 201)
def find_by_username(self, username=None): """ find user by his username !important : username need to be once time in DB @username = string of username @return = boolean """ if username: self.username = username user = query( sql_requests.auth_login, {"username": self.username}, fetch="one", ) print(user) if not user: return False self.user = user return True
def edit_user(id_user): data = request.get_json() # todo : check if user is really a good user if not "auth" in data: status = jsonify( status="need auth object", state="danger", ) return make_response(status, 400) auth = data["auth"] if not "email" in auth: status = jsonify( status="need email object in auth", state="danger", ) return make_response(status, 400) values = { "email": auth["email"], "firstname": auth["firstname"], "lastname": auth["lastname"], "id_user": id_user, } result = query(sql_requests.auth_safe_edit, values) if result: status = jsonify(status="user edit successful", state="success") else: status = jsonify(status="Database has problem.", state="danger") return make_response(status, 200)