blob: bca3e560536258b1f091443bd9a4dc361c392bb6 [file] [log] [blame]
Kanchan Chauhane0818f82016-04-22 14:39:02 +05301# Copyright (c) 2015, Frappe Technologies Pvt. Ltd. and Contributors
2# License: GNU General Public License v3. See license.txt
3
Chillar Anand915b3432021-09-02 16:44:59 +05304
Kanchan Chauhane0818f82016-04-22 14:39:02 +05305import frappe
Kanchan Chauhane0818f82016-04-22 14:39:02 +05306
7no_cache = 1
Kanchan Chauhane0818f82016-04-22 14:39:02 +05308
Ankush Menat494bd9e2022-03-28 18:52:46 +05309
Anand Doshie3bd78e2016-04-22 18:53:21 +053010def get_context(context):
Ankush Menat494bd9e2022-03-28 18:52:46 +053011 homepage = frappe.get_doc("Homepage")
Rushabh Mehta4b9238a2016-05-12 15:22:59 +053012
Kanchan Chauhan239b3512016-05-02 11:43:44 +053013 for item in homepage.products:
Ankush Menat494bd9e2022-03-28 18:52:46 +053014 route = frappe.db.get_value("Website Item", {"item_code": item.item_code}, "route")
Anand Doshi771ab0c2016-06-27 12:04:13 +053015 if route:
Ankush Menat494bd9e2022-03-28 18:52:46 +053016 item.route = "/" + route
Rushabh Mehta4b9238a2016-05-12 15:22:59 +053017
Faris Ansari5f8b3582019-03-19 11:48:32 +053018 homepage.title = homepage.title or homepage.company
19 context.title = homepage.title
Rushabh Mehtaec2d09c2016-08-09 16:43:15 +053020 context.homepage = homepage
Faris Ansari5f8b3582019-03-19 11:48:32 +053021
Ankush Menat494bd9e2022-03-28 18:52:46 +053022 if homepage.hero_section_based_on == "Homepage Section" and homepage.hero_section:
23 homepage.hero_section_doc = frappe.get_doc("Homepage Section", homepage.hero_section)
Faris Ansari5f8b3582019-03-19 11:48:32 +053024
25 if homepage.slideshow:
Ankush Menat494bd9e2022-03-28 18:52:46 +053026 doc = frappe.get_doc("Website Slideshow", homepage.slideshow)
Faris Ansari5f8b3582019-03-19 11:48:32 +053027 context.slideshow = homepage.slideshow
28 context.slideshow_header = doc.header
29 context.slides = doc.slideshow_items
30
Ankush Menat494bd9e2022-03-28 18:52:46 +053031 context.blogs = frappe.get_all(
32 "Blog Post",
33 fields=["title", "blogger", "blog_intro", "route"],
34 filters={"published": 1},
35 order_by="modified desc",
36 limit=3,
Faris Ansari5f8b3582019-03-19 11:48:32 +053037 )
38
39 # filter out homepage section which is used as hero section
Ankush Menat494bd9e2022-03-28 18:52:46 +053040 homepage_hero_section = (
41 homepage.hero_section_based_on == "Homepage Section" and homepage.hero_section
Faris Ansari5f8b3582019-03-19 11:48:32 +053042 )
Ankush Menat494bd9e2022-03-28 18:52:46 +053043 homepage_sections = frappe.get_all(
44 "Homepage Section",
45 filters=[["name", "!=", homepage_hero_section]] if homepage_hero_section else None,
46 order_by="section_order asc",
47 )
48 context.homepage_sections = [
49 frappe.get_doc("Homepage Section", name) for name in homepage_sections
50 ]
Faris Ansari5f8b3582019-03-19 11:48:32 +053051
52 context.metatags = context.metatags or frappe._dict({})
53 context.metatags.image = homepage.hero_image or None
54 context.metatags.description = homepage.description or None
55
Ankush Menat494bd9e2022-03-28 18:52:46 +053056 context.explore_link = "/all-products"