daily-tracker

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | README

tracker.ex (807B)


      1 defmodule DailyTracker.Tracker do
      2   import Ecto.Query, warn: false
      3   alias DailyTracker.Repo
      4   alias DailyTracker.Tracker.Entry
      5   alias DailyTracker.Accounts.Scope
      6 
      7   def list_entries(%Scope{user: user}) do
      8     Entry
      9     |> where(user_id: ^user.id)
     10     |> Repo.all()
     11   end
     12 
     13   def get_entry!(%Scope{user: user}, id) do
     14     Entry
     15     |> where(user_id: ^user.id)
     16     |> Repo.get!(id)
     17   end
     18 
     19   def create_entry(%Scope{user: user}, attrs) do
     20     %Entry{user_id: user.id}
     21     |> Entry.changeset(attrs)
     22     |> Repo.insert()
     23   end
     24 
     25   def update_entry(%Entry{} = entry, attrs) do
     26     entry
     27     |> Entry.changeset(attrs)
     28     |> Repo.update()
     29   end
     30 
     31   def delete_entry(%Entry{} = entry) do
     32     Repo.delete(entry)
     33   end
     34 
     35   def change_entry(%Entry{} = entry, attrs \\ %{}) do
     36     Entry.changeset(entry, attrs)
     37   end
     38 end