From 9ebd64f47dfa79e51fbc207992786c19b5e1699d Mon Sep 17 00:00:00 2001 From: Jannat Patel Date: Thu, 9 Nov 2023 15:18:06 +0530 Subject: [PATCH 1/3] build: added pyproject.toml --- cypress.config.js | 2 +- lms/www/courses/create.py | 5 +++-- pyproject.toml | 34 ++++++++++++++++++++++++++++++++++ requirements.txt | 8 -------- 4 files changed, 38 insertions(+), 11 deletions(-) create mode 100644 pyproject.toml delete mode 100644 requirements.txt diff --git a/cypress.config.js b/cypress.config.js index ffbf5130..04ebc494 100644 --- a/cypress.config.js +++ b/cypress.config.js @@ -13,6 +13,6 @@ module.exports = defineConfig({ openMode: 0, }, e2e: { - baseUrl: "http://dd1:8000", + baseUrl: "http://pyp:8000", }, }); diff --git a/lms/www/courses/create.py b/lms/www/courses/create.py index 7b83f3f5..746dfa09 100644 --- a/lms/www/courses/create.py +++ b/lms/www/courses/create.py @@ -3,6 +3,7 @@ from lms.lms.utils import ( redirect_to_courses_list, can_create_courses, has_course_moderator_role, + has_course_instructor_role, ) from frappe import _ @@ -15,14 +16,14 @@ def get_context(context): except KeyError: redirect_to_courses_list() - if not can_create_courses(course_name): + if not can_create_courses(course_name) and course_name != "new-course": message = "You do not have permission to access this page." if frappe.session.user == "Guest": message = "Please login to access this page." raise frappe.PermissionError(_(message)) - if course_name == "new-course": + if course_name == "new-course" and has_course_instructor_role(): context.course = frappe._dict() context.course.edit_mode = True context.membership = None diff --git a/pyproject.toml b/pyproject.toml new file mode 100644 index 00000000..fe27bf47 --- /dev/null +++ b/pyproject.toml @@ -0,0 +1,34 @@ +[project] +name = "lms" +authors = [ + { name = "Frappe Technologies Pvt Ltd", email = "developers@frappe.io"} +] +description = "Easy to use, open source, Learning Management System" +requires-python = ">=3.10" +readme = "README.md" +dynamic = ["version"] +dependencies = [ + # core dependencies + "websocket_client~=1.6.4", + "markdown~=3.5.1", + "beautifulsoup4~4.12.2", + "lxml~=4.9.3", + "cairocffi~=1.6.1", + "razorpay~=1.4.1" +] + +[build-system] +requires = ["flit_core >=3.4,<4"] +build-backend = "flit_core.buildapi" + +[tool.black] +line-length = 99 + +[tool.isort] +line_length = 99 +multi_line_output = 3 +include_trailing_comma = true +force_grid_wrap = 0 +use_parentheses = true +ensure_newline_before_comments = true +indent = "\t" diff --git a/requirements.txt b/requirements.txt deleted file mode 100644 index 74bac25a..00000000 --- a/requirements.txt +++ /dev/null @@ -1,8 +0,0 @@ -frappe -websocket_client -markdown -beautifulsoup4 -lxml -cairocffi -html2image -razorpay \ No newline at end of file From 9f9dfdb26dabfc6711bc4c00645d750d3e08de68 Mon Sep 17 00:00:00 2001 From: Jannat Patel Date: Thu, 9 Nov 2023 15:27:46 +0530 Subject: [PATCH 2/3] fix: get certificate button visibility --- pyproject.toml | 4 ---- 1 file changed, 4 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index fe27bf47..e09fa46e 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -21,11 +21,7 @@ dependencies = [ requires = ["flit_core >=3.4,<4"] build-backend = "flit_core.buildapi" -[tool.black] -line-length = 99 - [tool.isort] -line_length = 99 multi_line_output = 3 include_trailing_comma = true force_grid_wrap = 0 From 8453b54360f47575d331ad5d8b0e6f0dbcf6b490 Mon Sep 17 00:00:00 2001 From: Jannat Patel Date: Thu, 9 Nov 2023 15:46:51 +0530 Subject: [PATCH 3/3] fix: syntax of pyproject --- pyproject.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pyproject.toml b/pyproject.toml index e09fa46e..e63b6091 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -11,7 +11,7 @@ dependencies = [ # core dependencies "websocket_client~=1.6.4", "markdown~=3.5.1", - "beautifulsoup4~4.12.2", + "beautifulsoup4~=4.12.2", "lxml~=4.9.3", "cairocffi~=1.6.1", "razorpay~=1.4.1"