     (-> (DateTimeFormat. format)
         (.format date)
         (clojure.string/replace #"(\d+)o" #(ordinal-suffix (second %))))))
+
+(defn get-load-query [comp]
+  (conj (om/get-query comp) :ui/fetch-state))
 
 (s/def ::component om/component?)
 (s/def ::button-color #{"yellow" "orange" "redorange" "red"})

    (let [{:keys [db/id lesson/topic lesson/type lesson/playlist-items ui/selected-index
                  ph/pagination]} (om/props this)
          selected-index (or selected-index 0)
          item (nth (vec playlist-items) selected-index)
          set-selected (fn [n]
                         (om/transact! (om/get-reconciler this)
                                       [type id]
                                       [`(um/set-props {:ui/selected-index ~n})
                                        :route/data :app/route]))]
      (container
        (dom/div #js {:className "row"}
          (dom/div #js {:className "span3"}

                 (let [{:app/keys [route]} n]
                   (if (or (not= (:app/route o) route)
                           (not= (:app/me o) (:app/me n)))
                     (let [comp      (some-> route r/route->component)
                           auth-req? (if (implements? IRequireAuth comp)
                                       (auth-required? comp) false)]
                       (when (and auth-req? (= (auth-state n) ::guest))
