def form_handler(request): text = request.form.get("text") slug = (request.form.get("name_eng").replace(" ", "-")).replace( "_", "-") if request.form.get("name_persian") == "": return { "Result": False, "Message": "نام فارسی دوره را وارد کنید." } if slug == "": return { "Result": False, "Message": "نام انگلیسی دوره را وارد کنید." } if text == "": return {"Result": False, "Message": "متن اصلی را وارد کنید."} uploaded_file = request.files["cover"] if uploaded_file.filename == "": return {"Message": "تصویر را آپلود کنید."} english_name = slug uploaded_image = request.files.get("cover") uploaded_image_bytes = uploaded_image.read() format_file = General().format_recognizer(uploaded_image_bytes) General().setup_blog_post_folder(slug) file_name = "blog-cover_" + english_name + "." + format_file location_image = "static/assets/images/blog/{}/".format( slug) + file_name location_image_href = "/static//assets/images/blog/{}/".format( slug) + file_name with open(location_image, "wb") as file: file.write(uploaded_image_bytes) General().image_resizer_using_imgp(location_image, 1500) General().image_optimizer_using_imgp(location_image) links_images = re.findall("src=[\"\'](.*?)[\"\']", text) for link in links_images: file_path = General().href_to_path(link) file_name = (file_path.split("/"))[-1] new_file_path = "static/assets/images/blog/{slug}/{file_name}".format( slug=slug, file_name=file_name) new_file_href = "/static//assets/images/blog/{slug}/{file_name}".format( slug=slug, file_name=file_name) General().move_file_path(file_path, new_file_path) text = text.replace(link, new_file_href) message = Database().add_post_blog_to_db( persian_name=request.form.get("name_persian"), eng_name=english_name, cover_href=location_image_href, text=text, ) return message
def form_handler(request): text = request.form.get("text") day = request.form.get("day") slug = request.form.get("slug") if slug == "": return { "Result": False, "Message": "نام انگلیسی دوره را وارد کنید." } if request.form.get("day") == "": return {"Result": False, "Message": "روز دوره را وارد کنید."} if text == "": return {"Result": False, "Message": "متن اصلی را وارد کنید."} try: int(day) except ValueError: return {"Result": False, "Message": "روز دوره باید عدد باشد."} if Database().get_courses_data_from_db(slug) is False: return { "Result": False, "Message": "همچین دوره ای وجود ندارد." } links_images = re.findall("src=[\"\'](.*?)[\"\']", text) if General().check_existence_of_a_file( "static/assets/courses/{slug}/days/{day}".format( slug=slug, day=day)) is False: General().setup_course_folder(slug) for link in links_images: file_path = General().href_to_path(link) file_name = (file_path.split("/"))[-1] new_file_path = "static/assets/courses/{slug}/days/{day_number}/{file_name}".format( slug=slug, day_number=day, file_name=file_name) new_file_href = "/static//assets/courses/{slug}/days/{day_number}/{file_name}".format( slug=slug, day_number=day, file_name=file_name) General().move_file_path(file_path, new_file_path) text = text.replace(link, new_file_href) message = Database().add_day_text_data_to_db( course_name_slug=slug, day_num=day, text=text, ) return message