(import-macros {:compile-html HTML} :macros) (local lib (require :lib)) (local templates (require :templates)) (local texts { :individual-ceremony (lib.improve-typography "Индивидуальная чайная церемония: мастер готовит для вас чай на ваш выбор. О времени встречи договариваемся. Стоимость 1000 рублей с человека, от 2 до 5 человек.") :weekly-meetings (lib.improve-typography "Еженедельное мероприятие: каждую субботу в 15:00 мы собираемся и пьем чай из нашей коллекции. Для посещения необходима запись в комментариях под соответствующим постом в нашей группе. Стоимость 800 рублей с человека.") :shop (lib.improve-typography "Мы продаем классный чай и посуду локально. На сайте можно ознакомиться с нашей коллекцией и сделать заказ. Самовывоз или доставка по договоренности.") :everytea (lib.improve-typography "Мы разработали и поддерживаем сервис для поиска чая и чайной посуды на популярных сайтах. Полезно, если не хотите искать на отдельных сайтах или хотите быстро сравнить цены на конкретный чай.")}) (fn pick-gallery-photo [list] (let [chosen (. list (math.random (# list)))] (HTML [:div {} [:a {:href (.. "static/" chosen.name ".webp") :target "_blank"} [:img {:src (.. "static/" chosen.name "-p.webp") :alt chosen.alt}]]]))) (fn content [authenticated?] [(HTML [:aside {} (templates.header "" authenticated?) (templates.address-block) [:section {} [:h2 {} "Форматы участия"] [:div {:class "mb-1-5"} [:div {:class "mb-1"} [:NO-ESCAPE texts.individual-ceremony]] [:div {} [:a {:href "https://t.me/whitetoadvlad"} "Записаться ⟶"]]] [:div {:class "mb-1-5"} [:div {:class "mb-1"} [:NO-ESCAPE texts.weekly-meetings]] [:div {} [:a {:href "https://t.me/whitetoadtea"} "Подписаться ⟶"]]] [:div {} [:div {:class "mb-1"} [:NO-ESCAPE texts.shop]] [:div {} [:a {:href "/shop"} "Купить чай ⟶"]]]] [:section {} [:h2 {} "Агрегатор"] [:p {} [:NO-ESCAPE texts.everytea]] [:div {} [:a {:href "https://everytea.ru"} "everytea.ru ⟶"]]] (templates.contact-block)]) (HTML [:div {:class "content"} [:div {:class "gallery"} (pick-gallery-photo [{:name "people" :alt "Люди в чайной"} {:name "gaiwan2" :alt "Близко сфотографированный чайный столик с пиалами и гайванью"} {:name "teapot2" :alt "Пиала и чайник на фоне гирлянды"}]) (pick-gallery-photo [{:name "table" :alt "Сфотографированные сверху пиалы на японском столике"}]) [:div {} [:video {:autoplay true :loop true :muted true} [:source {:src "static/boiling-p.webm" :type "video/webm"}]]] (pick-gallery-photo [{:name "gaiwan" :alt "Гайвань и ширма с гирляндами на фоне"} {:name "wall" :alt "Белая стена с веером и тенью окна"} {:name "teapot" :alt "Чайник в темноте на светлом фоне гирлянд"} {:name "teapot3" :alt "Чайник в руке на фоне растений"}]) (pick-gallery-photo [{:name "rack" :alt "Стеллаж с чайной посудой"} {:name "flowers" :alt "Ваза с цветами рядом с чайным столиком"}]) [:div {} [:video {:autoplay true :loop true :muted true} [:source {:src "static/gaiwan-p.webm" :type "video/webm"}]]]]])]) (fn render [request _ authenticated?] (values 200 {} (templates.base (content authenticated?)))) {: render}