* feat: sort by position * chore: whitespace change * feat: add border bottom color to list item * feat: allow dragging articles * feat: add migration to reorder all articles * feat: add onsort method * feat: finish UI sorting * feat: show 50 per page in articles list * feat: add article sorting methods * feat: patch up reorder action with the API * refactor: better naming * chore: add comments * feat: attach position to article before create * feat: move article to end if moved between categories * chore: add comments * chore: update version * fix: don't change position if previous category was nil * fix: condition to trigger update on category change * refactor: store new_position * refactor: use grid instead of table * feat: add snug spacing * feat: add grab-icon * feat: add grab icon to list * refactor: show draggable only for category page * feat: add update_positions as a class method --------- Co-authored-by: Nithin David Thomas <1277421+nithindavid@users.noreply.github.com>
40 lines
725 B
Ruby
40 lines
725 B
Ruby
class ArticlePolicy < ApplicationPolicy
|
|
def index?
|
|
@account_user.administrator? || @account.users.include?(@user)
|
|
end
|
|
|
|
def update?
|
|
@account_user.administrator? || portal_member?
|
|
end
|
|
|
|
def show?
|
|
@account_user.administrator? || portal_member?
|
|
end
|
|
|
|
def edit?
|
|
@account_user.administrator? || portal_member?
|
|
end
|
|
|
|
def create?
|
|
@account_user.administrator? || portal_member?
|
|
end
|
|
|
|
def destroy?
|
|
@account_user.administrator? || portal_member?
|
|
end
|
|
|
|
def attach_file?
|
|
@account_user.administrator? || portal_member?
|
|
end
|
|
|
|
def reorder?
|
|
@account_user.administrator? || portal_member?
|
|
end
|
|
|
|
private
|
|
|
|
def portal_member?
|
|
@record.first.portal.members.include?(@user)
|
|
end
|
|
end
|