           (assoc :volume (or
                           (-> (text+ [:.product-details_info-block :.size]) (u/smart-parse-double))
                           (-> (spec "Объём") (u/smart-parse-double))))
-          (assoc :price (some-> (text+ [:.show_all_sum])
-                                (u/smart-parse-double)
-                                (/ 100.0)))
 
+          ;; price only if 
+          ((fn [doc]
+             (if (:available doc)
+               (assoc doc :price (some-> (text+ [:.show_all_sum])
+                                         (u/smart-parse-double)
+                                         (/ 100.0)))
+               doc)))
+          
           ;; TODO 8% sale
           ((fn [p]
              (let [oldprice (some-> (q*? [:.buying_block_compare :span])

(defn- node->document
  [provider {page :page node :node link :link :as nodemap}]
  (su/with-selectors provider nodemap
    (let [spec (->> (concat (q* [:.harakter_tovar :p])
                            (q* [:table.details_about :p]))
                    (map html/text)
                    (map (fn [s]
                           (some->> (.split s ":" 2)
                                    (seq)
                                    (map u/cleanup)
                                    (into []))))
                    (remove nil?)
                    (into {}))]
      (-> {}
          (assoc :provider (p/pname provider))

                   :node-selector      [:.item-block_main]
                   :link-selector      [:.item-block-head_main :a]
                   :link-selector-type :relative
                   :last-page-selector [:.pagination :.pag]
                   }
   })

