def detail(request, id, slug): prismic = PrismicHelper() document = prismic.get_document(id) parameters = {'context': prismic.get_context(), 'document': document} return render(request, 'prismic_app/detail.html', parameters)
def products(request): prismic = PrismicHelper(request) context = prismic.get_context() all_products = sorted(prismic.form("products").ref(context["ref"]).submit().documents, key=lambda p: p.get_text("product.name")) return render(request, 'prismic_app/products.html', {'context': context, 'products': all_products})
def index(request): prismic = PrismicHelper() form = prismic.form("everything") documents = form.submit() parameters = {'documents': documents, 'context': prismic.get_context()} return render(request, 'prismic_app/index.html', parameters)
def job(request, id, slug): prismic = PrismicHelper(request) context = prismic.get_context() return render(request, 'prismic_app/job_detail.html', { 'context': context, 'main': prismic.get_bookmark("jobs"), 'job': prismic.get_document(id) })
def stores(request): prismic = PrismicHelper(request) context = prismic.get_context() all_stores = sorted(prismic.form("stores").ref(context["ref"]).submit().documents, key=lambda p: p.get_text("store.name")) return render(request, 'prismic_app/stores.html', { 'context': context, 'main': prismic.get_bookmark("stores"), 'stores': all_stores})
def index(request): prismic = PrismicHelper() context = prismic.get_context() products = prismic.form("products").ref(context["ref"]).submit() featured = prismic.form("featured").ref(context["ref"]).submit() parameters = { 'context': context, 'products': products, 'featured': featured, 'product_categories': product_categories } return render(request, 'prismic_app/index.html', parameters)
def store(request, id, slug): prismic = PrismicHelper(request) context = prismic.get_context() the_store = prismic.get_document(id) openings = map(lambda day: [day, the_store.get_text("store.%s[0]" % day.lower())], WEEKDAYS) return render(request, 'prismic_app/store_detail.html', { 'context': context, 'main': prismic.get_bookmark("stores"), 'store': the_store, 'openings': openings })
def index(request): prismic = PrismicHelper(request) context = prismic.get_context() products = prismic.form("products").ref(context["ref"]).submit().documents featured = prismic.form("featured").ref(context["ref"]).submit().documents parameters = { 'context': context, 'products': products, 'featured': featured, 'product_categories': product_categories } return render(request, 'prismic_app/index.html', parameters)
def blog(request): prismic = PrismicHelper(request) context = prismic.get_context() category = request.GET.get('category') if category is not None: q = prismic.form("blog").query("""[[:d = at(my.blog-post.category, "%s")]]""" % category) else: q = prismic.form("blog") posts = list(sorted(q.ref(context["ref"]).submit().documents, key=lambda post: post.get_date("blog-post.date")))[:10] return render(request, 'prismic_app/posts.html', { 'context': context, 'categories': BLOG_CATEGORIES, 'posts': posts })
def jobs(request): prismic = PrismicHelper(request) context = prismic.get_context() jobs_doc = prismic.get_bookmark("jobs") services = collections.OrderedDict() services["Store"] = [] services["Office"] = [] services["Workshop"] = [] services["Other"] = [] for j in prismic.form("jobs").ref(context["ref"]).submit().documents: service = j.get_text("job-offer.service") if service in services: services[service].append(j) else: services["Other"].append(j) return render(request, 'prismic_app/jobs.html', {'context': context, 'jobs': jobs_doc, 'services': services})
def search(request): prismic = PrismicHelper(request) context = prismic.get_context() query = request.GET.get('query') if query is not None: products = prismic.form("everything")\ .query("""[[:d = any(document.type, ["product", "selection"])][:d = fulltext(document, "{0}")]]""".format(query))\ .ref(context["ref"]).submit() others = prismic.form("everything")\ .query("""[[:d = any(document.type, ["article", "blog-post", "job-offer", "store"])][:d = fulltext(document, "{0}")]]""".format(query))\ .ref(context["ref"]).submit() else: products = None others = None query = "" return render(request, 'prismic_app/search.html', {'context': context, 'products': products, 'others': others, 'query': query})
def product(request, id, slug): prismic = PrismicHelper(request) context = prismic.get_context() product = prismic.get_document(id) summary = product.get_text('product.short_lede') if summary is None: summary = product.get_text('product.name') related = prismic.get_documents(map(lambda d: d.id, product.get_all("product.related"))) return render(request, 'prismic_app/product_detail.html', { 'context': context, 'product': product, 'summary': summary, 'author': product.get_text("product.testimonial_author"), 'quote': product.get_text("product.testimonial_quote"), 'related': related })
def preview(request): prismic = PrismicHelper(request) token = request.GET.get('token') if token is None: raise Http404 url = prismic.api.preview_session(token, prismic.link_resolver, '/') print "url is = " + url response = redirect(url) response.set_cookie(PREVIEW_COOKIE, token, max_age=1800, httponly=False) return response
def blog_post(request, id, slug): prismic = PrismicHelper(request) context = prismic.get_context() post = prismic.get_document(id) related_posts = prismic.get_documents(map(lambda d: d.id, post.get_all("blog-post.relatedpost"))) related_products = prismic.get_documents(map(lambda d: d.id, post.get_all("blog-post.relatedproduct"))) return render(request, 'prismic_app/post_detail.html', { 'context': context, 'categories': BLOG_CATEGORIES, 'post': post, 'related_posts': related_posts, 'related_products': related_products, 'allow_comments': post.get_text("blog-post.allow_comments") == "Yes", 'post_url': request.build_absolute_uri(reverse('prismic:blog_post', args=[post.id, post.slug])) })
def about(request): prismic = PrismicHelper() context = prismic.get_context() about_doc = prismic.get_bookmark("about") return render(request, 'prismic_app/about.html', {'context': context, 'about': about_doc})
def about(request): prismic = PrismicHelper(request) context = prismic.get_context() about_doc = prismic.get_bookmark("about") return render(request, 'prismic_app/about.html', {'context': context, 'about': about_doc})