Add support for custom item and category producers
This commit is contained in:
@@ -6,14 +6,15 @@
|
|||||||
(def profile #{:t-shirt :tablet})
|
(def profile #{:t-shirt :tablet})
|
||||||
|
|
||||||
(defn produce-category-name [category i18n]
|
(defn produce-category-name [category i18n]
|
||||||
(str "### " (get i18n category)))
|
(let [producer (or (:category-producer i18n) #(str "### " %))]
|
||||||
|
(producer (get i18n category))))
|
||||||
|
|
||||||
(defn produce-item [item nights i18n]
|
(defn produce-item [item nights i18n]
|
||||||
(let [quantity (if (= (type (:quantity item)) java.lang.Long) (:quantity item) ((:quantity item) nights))
|
(let [quantity (if (= (type (:quantity item)) java.lang.Long) (:quantity item) ((:quantity item) nights))
|
||||||
quantity-long (long (Math/ceil quantity))
|
quantity-long (long (Math/ceil quantity))
|
||||||
quantity-string (if (> quantity-long 1) (str " x" quantity-long) "")
|
name (or (get i18n (:key item)) (:name item))
|
||||||
name (or (get i18n (:key item)) (:name item))]
|
producer (or (:item-producer i18n) #(str "- [ ] " %1 (if (> %2 1) (str " x" %2) "")))]
|
||||||
(str "- [ ] " name quantity-string)))
|
(producer name quantity-long)))
|
||||||
|
|
||||||
(defn produce-items [items nights i18n]
|
(defn produce-items [items nights i18n]
|
||||||
(->> items
|
(->> items
|
||||||
|
|||||||
Reference in New Issue
Block a user