From 2963e1c08873174fc8d38af5b2eb4a7a675beb71 Mon Sep 17 00:00:00 2001 From: janpaulo Date: Tue, 22 Feb 2022 08:57:08 +0800 Subject: [PATCH 1/2] initial setup for subject index offcnavas --- .../subject_accordion_component.html.erb | 2 +- .../subjects_offcanvas_component.html.erb | 2 +- app/javascript/src/application.scss | 1 + app/javascript/src/application/offcanvas.scss | 22 +++++++++++++++++++ 4 files changed, 25 insertions(+), 2 deletions(-) create mode 100644 app/javascript/src/application/offcanvas.scss diff --git a/app/components/subject_accordion_component/subject_accordion_component.html.erb b/app/components/subject_accordion_component/subject_accordion_component.html.erb index faddf8f..8081780 100644 --- a/app/components/subject_accordion_component/subject_accordion_component.html.erb +++ b/app/components/subject_accordion_component/subject_accordion_component.html.erb @@ -14,7 +14,7 @@
-
+
pb-1" id="<%= accordion_body_id %>">
Loading... diff --git a/app/components/subjects_offcanvas_component/subjects_offcanvas_component.html.erb b/app/components/subjects_offcanvas_component/subjects_offcanvas_component.html.erb index c806556..de5215a 100644 --- a/app/components/subjects_offcanvas_component/subjects_offcanvas_component.html.erb +++ b/app/components/subjects_offcanvas_component/subjects_offcanvas_component.html.erb @@ -1,4 +1,4 @@ -
+
Subjects
diff --git a/app/javascript/src/application.scss b/app/javascript/src/application.scss index 6689515..8e7c3e6 100644 --- a/app/javascript/src/application.scss +++ b/app/javascript/src/application.scss @@ -5,6 +5,7 @@ @import "./application/table"; @import "./application/nav-bar"; @import "./application/document-search"; +@import "./application/offcanvas"; .tableFixHead { overflow: auto; diff --git a/app/javascript/src/application/offcanvas.scss b/app/javascript/src/application/offcanvas.scss new file mode 100644 index 0000000..9996861 --- /dev/null +++ b/app/javascript/src/application/offcanvas.scss @@ -0,0 +1,22 @@ +.offcanvas-contents { + width: auto !important; + min-width: 400px !important; +} + +.offcanvas-contents .accordion, .accordion-item { + border: none !important; +} + +.offcanvas-contents .accordion-button:not(.collapsed) { + color: #0c63e4; + background-color: #fff; + box-shadow: none; +} + + +.sub-body1{ + display: grid; + grid-template-columns: 1fr 1fr; + column-gap: 10px; + max-width: 500px; +} From 47ce931c1a04b53cd852c137ef87418572e45c0f Mon Sep 17 00:00:00 2001 From: janpaulo Date: Tue, 22 Feb 2022 17:00:56 +0800 Subject: [PATCH 2/2] Final offcanvas subjects and doctirines --- .../subject_accordion_component.html.erb | 4 +- .../subjects_offcanvas_component.html.erb | 3 +- app/javascript/src/application/offcanvas.scss | 111 +++++++++++++++++- app/javascript/src/application/sidenav.scss | 34 ++++-- app/views/layouts/application.html.erb | 4 +- 5 files changed, 135 insertions(+), 21 deletions(-) diff --git a/app/components/subject_accordion_component/subject_accordion_component.html.erb b/app/components/subject_accordion_component/subject_accordion_component.html.erb index 8081780..4149cf0 100644 --- a/app/components/subject_accordion_component/subject_accordion_component.html.erb +++ b/app/components/subject_accordion_component/subject_accordion_component.html.erb @@ -2,11 +2,11 @@
<% if search_result["has_children?"].present? %> - <% else %> <%= link_to search_result["name"], custom_url, class: "accordion-link text-decoration-none text-dark d-block sub#{search_result["heirarchy_level"] + 1} clickable-link" %> diff --git a/app/components/subjects_offcanvas_component/subjects_offcanvas_component.html.erb b/app/components/subjects_offcanvas_component/subjects_offcanvas_component.html.erb index de5215a..44e1a70 100644 --- a/app/components/subjects_offcanvas_component/subjects_offcanvas_component.html.erb +++ b/app/components/subjects_offcanvas_component/subjects_offcanvas_component.html.erb @@ -1,6 +1,7 @@
-
Subjects
+
<%=opts[:header_title]%>
+
diff --git a/app/javascript/src/application/offcanvas.scss b/app/javascript/src/application/offcanvas.scss index 9996861..3480cd6 100644 --- a/app/javascript/src/application/offcanvas.scss +++ b/app/javascript/src/application/offcanvas.scss @@ -1,6 +1,7 @@ .offcanvas-contents { width: auto !important; min-width: 400px !important; + box-shadow: 0 0 15px -5px #000 !important; } .offcanvas-contents .accordion, .accordion-item { @@ -8,15 +9,113 @@ } .offcanvas-contents .accordion-button:not(.collapsed) { - color: #0c63e4; background-color: #fff; - box-shadow: none; + a { + color: darkred !important; + font-weight: 600; + } } +// .for-body-grid.sub-body1{ +// display: grid; +// grid-template-columns: 1fr 1fr; +// column-gap: 10px; +// max-width: 500px; +// padding-left: 10px !important; +// } + +// .for-body-grid.sub-body2{ +// display: grid; +// grid-template-columns: 1fr 1fr; +// column-gap: 10px; +// max-width: 600px; +// padding-left: 20px!important; +// } + +// .for-body-grid.sub-body3{ +// display: grid; +// grid-template-columns: 1fr 1fr; +// column-gap: 10px; +// max-width: 700px; +// padding-left: 30px!important; +// } + +// .for-body-grid.sub-body4{ +// display: grid; +// grid-template-columns: 1fr 1fr; +// column-gap: 10px; +// max-width: 800px; +// padding-left: 40px!important; +// } + +// .for-body-grid.sub-body5{ +// display: grid; +// grid-template-columns: 1fr 1fr; +// column-gap: 10px; +// max-width: 900px; +// padding-left: 50px!important; +// } + +// .for-body-grid.sub-body6{ +// display: grid; +// grid-template-columns: 1fr 1fr; +// column-gap: 10px; +// max-width: 1000px; +// padding-left: 60px!important; +// } + +// .for-body-grid.sub-body7{ +// display: grid; +// grid-template-columns: 1fr 1fr; +// column-gap: 10px; +// max-width: 1000px; +// padding-left: 70px!important; +// } .sub-body1{ - display: grid; - grid-template-columns: 1fr 1fr; - column-gap: 10px; - max-width: 500px; + width: auto; + max-width: 1000px; + padding-left: 10px !important; +} + +.sub-body2{ + width: auto; + max-width: 1000px; + min-width: 400px; + padding-left: 20px!important; +} + +.sub-body3{ + width: auto; + max-width: 800px; + padding-left: 30px!important; +} + +.sub-body4{ + width: auto; + max-width: 800px; + padding-left: 40px!important; +} + +.sub-body5{ + width: auto; + max-width: 900px; + padding-left: 50px!important; +} + +.sub-body6{ + width: auto; + max-width: 1000px; + padding-left: 60px!important; +} + +.sub-body7{ + width: auto; + max-width: 1000px; + padding-left: 70px!important; +} + +.offcanvas-header { + border-bottom: 1px solid #0000004d; + color: #00000099 !important; } diff --git a/app/javascript/src/application/sidenav.scss b/app/javascript/src/application/sidenav.scss index 5346530..d0fea0e 100644 --- a/app/javascript/src/application/sidenav.scss +++ b/app/javascript/src/application/sidenav.scss @@ -197,33 +197,47 @@ } .sub1 { - padding-left: 22px; - padding-top: 10px; + padding-left: 10px; + font-weight: 500; + padding-right: 10px; padding-bottom: 10px; + font-size: 1.1rem; } .sub2 { - padding-left: 40px; - padding-top: 10px; + padding-left: 10px; padding-bottom: 10px; + padding-right: 10px; } .sub3 { - padding-left: 60px; - padding-top: 10px; + padding-left: 10px; padding-bottom: 10px; + padding-right: 10px; } .sub4 { - padding-left: 80px; - padding-top: 10px; + padding-left: 10px; padding-bottom: 10px; + padding-right: 10px; } .sub5 { - padding-left: 100px; - padding-top: 10px; + padding-left: 10px; padding-bottom: 10px; + padding-right: 10px; +} + +.sub6 { + padding-left: 10px; + padding-bottom: 10px; + padding-right: 10px; +} + +.sub7 { + padding-left: 10px; + padding-bottom: 10px; + padding-right: 10px; } .sidebar-body { diff --git a/app/views/layouts/application.html.erb b/app/views/layouts/application.html.erb index 77ed9c2..346eec0 100644 --- a/app/views/layouts/application.html.erb +++ b/app/views/layouts/application.html.erb @@ -14,8 +14,8 @@ <%= render(SidenavComponent.new(current_user: current_user, opts: { is_nav_bar: true }))%> - <%= render(SubjectsOffcanvasComponent.new(current_user: current_user, opts: { is_render: true, element_id: "subjectsOffCanvas", accordion_body_id: "subjectsAccordionBody" })) %> - <%= render(SubjectsOffcanvasComponent.new(current_user: current_user, opts: { is_render: true, element_id: "doctrinesOffCanvas", accordion_body_id: "doctrinesAccordionBody" })) %> + <%= render(SubjectsOffcanvasComponent.new(current_user: current_user, opts: { is_render: true, header_title: "Subjects", element_id: "subjectsOffCanvas", accordion_body_id: "subjectsAccordionBody" })) %> + <%= render(SubjectsOffcanvasComponent.new(current_user: current_user, opts: { is_render: true, header_title: "Doctrines", element_id: "doctrinesOffCanvas", accordion_body_id: "doctrinesAccordionBody" })) %>