 
                (= id :search)
                (do
-                 (.setToken history "/search"))
-
-               :else
-               (let [item (<! (util/edn-chan {:url (str "/items/" id)}))]
-                 (.setToken history (str "/" id))
-                 (om/update! app :current-item item))))
+                 (.setToken history "/search"))))
             (recur)))
 
       ;; event loop

                  (.setToken history (str "/" (:item/id data))) ;; XXX
                  (om/transact! app :current-item #(merge % data)))

                ;; TODO: where's get? Why not here?

                :search
                (let [data (<! (util/edn-chan
                                {:url (str "/search/" (:subs data))}))]
                  ;; XX: what if there's no hit?
                  ;;(.setToken history (str "/items")) ;; XXX
                  (om/transact! app :items (fn [_] data)) ;; search results
                  )


      (defroute "/:id" {id :id}
        (om/update! app :route [:view-item id])
        (put! (om/get-state owner :event) {:op :get :data id}))

      (.setEnabled history true)

