      (-> db
          (fork/set-submitting path false)
          (fork/set-server-message path message)))))
+
+(rf/reg-event-fx
+  ::recorded-production
+  (fn [{:keys [db]} [_ uuid id]]
+    {:db (notifications/set-button-state db uuid :recorded)
+     :http-xhrio
+     (as-transit {:method          :post
+                  :headers 	   (auth/auth-header db)
+                  :uri             (str "/api/productions/" id "/recorded")
+                  :on-success      [::ack-success uuid :recorded]
+                  :on-failure      [::ack-failure uuid :recorded]
+                  })}))
 
 (rf/reg-sub
  ::productions

    (notifications/clear-button-state db id :save)))

(rf/reg-event-fx
  ::ack-delete
  (fn [{:keys [db]} [_ id]]
    (let [db (-> db
                 (update-in [:productions :in-production] dissoc id)
                 (notifications/clear-button-state id :delete))
          empty? (-> db (get-in [:productions :in-production]) count (< 1))]
      (if empty?
        {:db db :dispatch [::fetch-productions]}

       (if @(rf/subscribe [::notifications/button-loading? uuid :recorded])
         [:button.button.is-loading]
         (tooltip-button
          {:on-click (fn [e] (rf/dispatch [::recorded-production uuid id]))
           :tooltip :mark-recorded
           :disabled (not has-manifest?)
           :icon "task"})))
