diff options
Diffstat (limited to 'Digitigrade/Model/Actor.php')
| -rw-r--r-- | Digitigrade/Model/Actor.php | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/Digitigrade/Model/Actor.php b/Digitigrade/Model/Actor.php index d04c841..b4e9392 100644 --- a/Digitigrade/Model/Actor.php +++ b/Digitigrade/Model/Actor.php @@ -1,6 +1,8 @@ <?php namespace Digitigrade\Model; +use Digitigrade\Notification\PendingFollowActionedNotif; +use Digitigrade\Notification\UnfollowNotif; use Digitigrade\RpcException; use Digitigrade\RpcReceiver; @@ -118,21 +120,26 @@ class Actor extends PushableModel implements RpcReceiver { switch ($method) { case 'follow': $status = $this->requestToFollow ? FollowRelationStatus::PENDING : FollowRelationStatus::ACTIVE; - FollowRelation::create($args[0], $this, $status); + $rel = FollowRelation::create($args[0], $this, $status); + $rel->processNotifications(); return $status; case 'unfollow': FollowRelation::findByActors($args[0], $this)->remove(); + (new UnfollowNotif($args[0], $this))->processNotifications(); return; case 'acceptedFollow': $rel = FollowRelation::findByActors($this, $args[0]); $rel->status = FollowRelationStatus::ACTIVE; $rel->save(); + $rel->processNotifications(); + (new PendingFollowActionedNotif($args[0], $this, 'accept'))->processNotifications(); return; case 'rejectedFollow': FollowRelation::findByActors($this, $args[0])->remove(); + (new PendingFollowActionedNotif($args[0], $this, 'reject'))->processNotifications(); return; default: |
