mirror of
https://0xacab.org/sutty/sutty
synced 2024-11-16 02:11:42 +00:00
Merge branch 'issue-15109' of 0xacab.org:sutty/sutty into production.panel.sutty.nl
This commit is contained in:
commit
6a0ccbd004
2 changed files with 26 additions and 11 deletions
|
@ -38,21 +38,33 @@ module Api
|
||||||
head :accepted
|
head :accepted
|
||||||
end
|
end
|
||||||
|
|
||||||
# Cuando aprobamos una actividad, recibimos la confirmación y
|
# Cuando la Social Inbox acepta una actividad, la recibimos
|
||||||
# cambiamos el estado.
|
# igual y la guardamos por si cambiamos de idea.
|
||||||
|
#
|
||||||
|
# @todo DRY
|
||||||
def onapproved
|
def onapproved
|
||||||
ActivityPub.transaction do
|
ActivityPub.transaction do
|
||||||
activity_pub.approve! if activity_pub.waiting?
|
actor.present?
|
||||||
|
instance.present?
|
||||||
|
object.present?
|
||||||
|
activity.present?
|
||||||
|
activity_pub.approve!
|
||||||
end
|
end
|
||||||
|
|
||||||
head :accepted
|
head :accepted
|
||||||
end
|
end
|
||||||
|
|
||||||
# Cuando rechazamos una actividad, recibimos la confirmación y
|
# Cuando la Social Inbox rechaza una actividad, la recibimos
|
||||||
# cambiamos el estado
|
# igual y la guardamos por si cambiamos de idea.
|
||||||
|
#
|
||||||
|
# @todo DRY
|
||||||
def onrejected
|
def onrejected
|
||||||
ActivityPub.transaction do
|
ActivityPub.transaction do
|
||||||
activity_pub.reject! if activity_pub.waiting?
|
actor.present?
|
||||||
|
instance.present?
|
||||||
|
object.present?
|
||||||
|
activity.present?
|
||||||
|
activity_pub.reject!
|
||||||
end
|
end
|
||||||
|
|
||||||
head :accepted
|
head :accepted
|
||||||
|
|
|
@ -21,8 +21,6 @@ class ActivityPub < ApplicationRecord
|
||||||
aasm do
|
aasm do
|
||||||
# Todavía no hay una decisión sobre el objeto
|
# Todavía no hay una decisión sobre el objeto
|
||||||
state :paused, initial: true
|
state :paused, initial: true
|
||||||
# Estamos esperando respuesta desde la Social Inbox
|
|
||||||
state :waiting
|
|
||||||
# Le usuarie aprobó el objeto
|
# Le usuarie aprobó el objeto
|
||||||
state :approved
|
state :approved
|
||||||
# Le usuarie rechazó el objeto
|
# Le usuarie rechazó el objeto
|
||||||
|
@ -46,17 +44,22 @@ class ActivityPub < ApplicationRecord
|
||||||
# Si un objeto previamente aprobado fue actualizado, volvemos a
|
# Si un objeto previamente aprobado fue actualizado, volvemos a
|
||||||
# pausarlo.
|
# pausarlo.
|
||||||
event :pause do
|
event :pause do
|
||||||
transitions from: %i[waiting approved rejected], to: :paused
|
transitions from: %i[approved rejected], to: :paused
|
||||||
end
|
end
|
||||||
|
|
||||||
# La actividad se aprueba
|
# La actividad se aprueba
|
||||||
event :approve do
|
event :approve do
|
||||||
transitions from: :waiting, to: :approved
|
transitions from: %i[paused rejected], to: :approved
|
||||||
end
|
end
|
||||||
|
|
||||||
# La actividad fue rechazada
|
# La actividad fue rechazada
|
||||||
event :reject do
|
event :reject do
|
||||||
transitions from: :waiting, to: :rejected
|
transitions from: %i[paused approved], to: :rejected
|
||||||
|
end
|
||||||
|
|
||||||
|
# Solo podemos reportarla luego de rechazarla
|
||||||
|
event :report do
|
||||||
|
transitions from: :rejected, to: :reported
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in a new issue