Add editable pages
This commit is contained in:
31
slices/admin/repos/page_repo.rb
Normal file
31
slices/admin/repos/page_repo.rb
Normal file
@@ -0,0 +1,31 @@
|
||||
require "time_math"
|
||||
|
||||
module Admin
|
||||
module Repos
|
||||
class PageRepo < Adamantium::Repo[:pages]
|
||||
commands :create, update: :by_pk
|
||||
|
||||
def list
|
||||
pages
|
||||
.order(Sequel.lit("published_at desc"))
|
||||
.to_a
|
||||
end
|
||||
|
||||
def find(slug:)
|
||||
pages.where(slug: slug).one!
|
||||
end
|
||||
|
||||
def delete(slug:)
|
||||
pages.where(slug: slug).delete
|
||||
end
|
||||
|
||||
def publish(slug:)
|
||||
pages.where(slug: slug).update(published_at: Time.now)
|
||||
end
|
||||
|
||||
def archive(slug:)
|
||||
pages.where(slug: slug).update(published_at: nil)
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
Reference in New Issue
Block a user