diff --git a/src/mtgcoll/client/routes/lists.cljs b/src/mtgcoll/client/routes/lists.cljs index 8019ada..dc2c673 100644 --- a/src/mtgcoll/client/routes/lists.cljs +++ b/src/mtgcoll/client/routes/lists.cljs @@ -98,18 +98,20 @@ {:bordered true :striped true :condensed true :hover true} [:thead [:tr - [:th "Name"] - [:th "Cards"]]] + [:th.col-sm-7 "Name"] + [:th.col-sm-3 "Card Qualities?"] + [:th.col-sm-2 "Cards"]]] [:tbody (doall (map - (fn [{:keys [id name is_public]}] + (fn [{:keys [id name is_public require_qualities num_cards]}] ^{:key id} [:tr (if (and (auth/authenticated?) (not is_public)) {:class "warning"}) [:td [:a {:href (->url "#/list/" id)} [:div name]]] - [:td "--"]]) + [:td (if require_qualities "Yes" "")] + [:td num_cards]]) @lists))]]))])))) (defn on-update-list-notes! diff --git a/src/mtgcoll/views/functions/lists.clj b/src/mtgcoll/views/functions/lists.clj index da38d74..05f7883 100644 --- a/src/mtgcoll/views/functions/lists.clj +++ b/src/mtgcoll/views/functions/lists.clj @@ -23,11 +23,19 @@ (defn lists-list [user-id] (let [public-only? (nil? user-id)] - ["select id, name, is_public, require_qualities - from lists - where id != 0 - and is_public in (true, ?) - order by name" + ["select l.id, + l.name, + l.is_public, + l.require_qualities, + ( + select coalesce(sum(lc.quantity), 0) + from lists_card_quantities lc + where lc.list_id = l.id + ) as num_cards + from lists l + where l.id != 0 + and l.is_public in (true, ?) + order by l.name" public-only?])) (defn lists-basic-list