diff options
Diffstat (limited to 'lib/classes')
| -rw-r--r-- | lib/classes/Forum/DTO/Member.php (renamed from lib/classes/Forum/DTO/ForumMember.php) | 2 | ||||
| -rw-r--r-- | lib/classes/Forum/DTO/Tag.php (renamed from lib/classes/Forum/DTO/ForumTag.php) | 2 | ||||
| -rw-r--r-- | lib/classes/Forum/Service/DiscussionNotification.php | 16 | ||||
| -rw-r--r-- | lib/classes/Forum/Service/PostingNotification.php | 24 | ||||
| -rw-r--r-- | lib/classes/JsonApi/RouteMap.php | 53 | ||||
| -rw-r--r-- | lib/classes/JsonApi/Routes/Forum/Authority.php | 13 | ||||
| -rw-r--r-- | lib/classes/JsonApi/Routes/Forum/CategoryIndex.php (renamed from lib/classes/JsonApi/Routes/Forum/ForumCategoryIndex.php) | 11 | ||||
| -rw-r--r-- | lib/classes/JsonApi/Routes/Forum/CategoryShow.php (renamed from lib/classes/JsonApi/Routes/Forum/ForumCategoryShow.php) | 11 | ||||
| -rw-r--r-- | lib/classes/JsonApi/Routes/Forum/CategoryTopics.php (renamed from lib/classes/JsonApi/Routes/Forum/ForumCategoryTopics.php) | 11 | ||||
| -rw-r--r-- | lib/classes/JsonApi/Routes/Forum/CategoryUpdateSort.php (renamed from lib/classes/JsonApi/Routes/Forum/ForumCategoryUpdateSort.php) | 8 | ||||
| -rw-r--r-- | lib/classes/JsonApi/Routes/Forum/ConfigIndex.php (renamed from lib/classes/JsonApi/Routes/Forum/ForumConfigIndex.php) | 5 | ||||
| -rw-r--r-- | lib/classes/JsonApi/Routes/Forum/DiscussionIndex.php (renamed from lib/classes/JsonApi/Routes/Forum/ForumDiscussionIndex.php) | 21 | ||||
| -rw-r--r-- | lib/classes/JsonApi/Routes/Forum/DiscussionPostings.php (renamed from lib/classes/JsonApi/Routes/Forum/ForumDiscussionPostings.php) | 25 | ||||
| -rw-r--r-- | lib/classes/JsonApi/Routes/Forum/DiscussionShow.php (renamed from lib/classes/JsonApi/Routes/Forum/ForumDiscussionShow.php) | 17 | ||||
| -rw-r--r-- | lib/classes/JsonApi/Routes/Forum/DiscussionTypeIndex.php (renamed from lib/classes/JsonApi/Routes/Forum/ForumDiscussionTypeIndex.php) | 8 | ||||
| -rw-r--r-- | lib/classes/JsonApi/Routes/Forum/DiscussionTypeShow.php (renamed from lib/classes/JsonApi/Routes/Forum/ForumDiscussionTypeShow.php) | 8 | ||||
| -rw-r--r-- | lib/classes/JsonApi/Routes/Forum/ForumDiscussionTypeDiscussions.php | 32 | ||||
| -rw-r--r-- | lib/classes/JsonApi/Routes/Forum/PostingDelete.php (renamed from lib/classes/JsonApi/Routes/Forum/ForumPostingDelete.php) | 6 | ||||
| -rw-r--r-- | lib/classes/JsonApi/Routes/Forum/PostingReactionDelete.php (renamed from lib/classes/JsonApi/Routes/Forum/ForumPostingReactionDelete.php) | 6 | ||||
| -rw-r--r-- | lib/classes/JsonApi/Routes/Forum/PostingReactionShow.php (renamed from lib/classes/JsonApi/Routes/Forum/ForumPostingReactionShow.php) | 10 | ||||
| -rw-r--r-- | lib/classes/JsonApi/Routes/Forum/PostingReactionStore.php (renamed from lib/classes/JsonApi/Routes/Forum/ForumPostingReactionStore.php) | 15 | ||||
| -rw-r--r-- | lib/classes/JsonApi/Routes/Forum/PostingReactions.php (renamed from lib/classes/JsonApi/Routes/Forum/ForumPostingReactions.php) | 13 | ||||
| -rw-r--r-- | lib/classes/JsonApi/Routes/Forum/PostingShow.php (renamed from lib/classes/JsonApi/Routes/Forum/ForumPostingShow.php) | 19 | ||||
| -rw-r--r-- | lib/classes/JsonApi/Routes/Forum/PostingStore.php (renamed from lib/classes/JsonApi/Routes/Forum/ForumPostingStore.php) | 35 | ||||
| -rw-r--r-- | lib/classes/JsonApi/Routes/Forum/PostingUpdate.php (renamed from lib/classes/JsonApi/Routes/Forum/ForumPostingUpdate.php) | 18 | ||||
| -rw-r--r-- | lib/classes/JsonApi/Routes/Forum/SubscriptionDelete.php (renamed from lib/classes/JsonApi/Routes/Forum/ForumSubscriptionDelete.php) | 6 | ||||
| -rw-r--r-- | lib/classes/JsonApi/Routes/Forum/SubscriptionIndex.php (renamed from lib/classes/JsonApi/Routes/Forum/ForumSubscriptionIndex.php) | 15 | ||||
| -rw-r--r-- | lib/classes/JsonApi/Routes/Forum/SubscriptionShow.php (renamed from lib/classes/JsonApi/Routes/Forum/ForumSubscriptionShow.php) | 12 | ||||
| -rw-r--r-- | lib/classes/JsonApi/Routes/Forum/SubscriptionStore.php (renamed from lib/classes/JsonApi/Routes/Forum/ForumSubscriptionStore.php) | 12 | ||||
| -rw-r--r-- | lib/classes/JsonApi/Routes/Forum/TopicDiscussions.php (renamed from lib/classes/JsonApi/Routes/Forum/ForumTopicDiscussions.php) | 21 | ||||
| -rw-r--r-- | lib/classes/JsonApi/Routes/Forum/TopicIndex.php (renamed from lib/classes/JsonApi/Routes/Forum/ForumTopicIndex.php) | 11 | ||||
| -rw-r--r-- | lib/classes/JsonApi/Routes/Forum/TopicShow.php (renamed from lib/classes/JsonApi/Routes/Forum/ForumTopicShow.php) | 9 | ||||
| -rw-r--r-- | lib/classes/JsonApi/Routes/Forum/TopicUpdateSort.php (renamed from lib/classes/JsonApi/Routes/Forum/ForumTopicUpdateSort.php) | 8 | ||||
| -rw-r--r-- | lib/classes/JsonApi/Routes/Institutes/Authority.php | 5 | ||||
| -rw-r--r-- | lib/classes/JsonApi/Routes/RangeAuthority.php | 41 | ||||
| -rw-r--r-- | lib/classes/JsonApi/SchemaMap.php | 18 | ||||
| -rw-r--r-- | lib/classes/JsonApi/Schemas/Activity.php | 2 | ||||
| -rw-r--r-- | lib/classes/JsonApi/Schemas/Forum/Category.php (renamed from lib/classes/JsonApi/Schemas/Forum/ForumCategory.php) | 2 | ||||
| -rw-r--r-- | lib/classes/JsonApi/Schemas/Forum/Discussion.php (renamed from lib/classes/JsonApi/Schemas/Forum/ForumDiscussion.php) | 2 | ||||
| -rw-r--r-- | lib/classes/JsonApi/Schemas/Forum/DiscussionType.php (renamed from lib/classes/JsonApi/Schemas/Forum/ForumDiscussionType.php) | 2 | ||||
| -rw-r--r-- | lib/classes/JsonApi/Schemas/Forum/Member.php (renamed from lib/classes/JsonApi/Schemas/Forum/ForumMember.php) | 2 | ||||
| -rw-r--r-- | lib/classes/JsonApi/Schemas/Forum/Posting.php (renamed from lib/classes/JsonApi/Schemas/Forum/ForumPosting.php) | 2 | ||||
| -rw-r--r-- | lib/classes/JsonApi/Schemas/Forum/PostingReaction.php (renamed from lib/classes/JsonApi/Schemas/Forum/ForumPostingReaction.php) | 2 | ||||
| -rw-r--r-- | lib/classes/JsonApi/Schemas/Forum/Subscription.php (renamed from lib/classes/JsonApi/Schemas/Forum/ForumSubscription.php) | 2 | ||||
| -rw-r--r-- | lib/classes/JsonApi/Schemas/Forum/Tag.php (renamed from lib/classes/JsonApi/Schemas/Forum/ForumTag.php) | 2 | ||||
| -rw-r--r-- | lib/classes/JsonApi/Schemas/Forum/Topic.php (renamed from lib/classes/JsonApi/Schemas/Forum/ForumTopic.php) | 10 | ||||
| -rw-r--r-- | lib/classes/Privacy.php | 2 | ||||
| -rw-r--r-- | lib/classes/Siteinfo.php | 2 |
48 files changed, 249 insertions, 330 deletions
diff --git a/lib/classes/Forum/DTO/ForumMember.php b/lib/classes/Forum/DTO/Member.php index a6f4ea4..2e32b9a 100644 --- a/lib/classes/Forum/DTO/ForumMember.php +++ b/lib/classes/Forum/DTO/Member.php @@ -5,7 +5,7 @@ use Avatar; use Context; use User; -class ForumMember +class Member { public function __construct( public string $id, diff --git a/lib/classes/Forum/DTO/ForumTag.php b/lib/classes/Forum/DTO/Tag.php index ca0e045..93050ba 100644 --- a/lib/classes/Forum/DTO/ForumTag.php +++ b/lib/classes/Forum/DTO/Tag.php @@ -3,7 +3,7 @@ namespace Forum\DTO; use DBManager; -class ForumTag +class Tag { public function __construct( public string $id, diff --git a/lib/classes/Forum/Service/DiscussionNotification.php b/lib/classes/Forum/Service/DiscussionNotification.php index c3dcfe8..0daaffb 100644 --- a/lib/classes/Forum/Service/DiscussionNotification.php +++ b/lib/classes/Forum/Service/DiscussionNotification.php @@ -4,17 +4,17 @@ namespace Forum\Service; use Forum\Enum\SubscriptionNotificationType; use Icon; use PersonalNotifications; -use Forum\ForumDiscussion; -use Forum\ForumSubscription; -use Forum\ForumTopic; +use Forum\Discussion; +use Forum\Subscription; +use Forum\Topic; use URLHelper; class DiscussionNotification { - protected ForumTopic $topic; - protected ForumDiscussion $discussion; + protected Topic $topic; + protected Discussion $discussion; - public function __construct(ForumDiscussion $discussion) + public function __construct(Discussion $discussion) { $this->discussion = $discussion; $this->topic = $discussion->topic; @@ -31,7 +31,7 @@ class DiscussionNotification protected function getSubscribers(): array { - return ForumSubscription::findBySQL( + return Subscription::findBySQL( "subject = :subject AND subject_id = :subject_id AND notification_type = :notification_type", [ 'subject' => 'topic', @@ -41,7 +41,7 @@ class DiscussionNotification ); } - protected function sendNotifications(ForumSubscription $subscriber): void + protected function sendNotifications(Subscription $subscriber): void { $url = URLHelper::getURL('dispatch.php/course/forum/discussions/show/'.$this->discussion->discussion_id, ['cid' => $this->topic->range_id], true); diff --git a/lib/classes/Forum/Service/PostingNotification.php b/lib/classes/Forum/Service/PostingNotification.php index 5e46535..9f6d82f 100644 --- a/lib/classes/Forum/Service/PostingNotification.php +++ b/lib/classes/Forum/Service/PostingNotification.php @@ -4,19 +4,19 @@ namespace Forum\Service; use Forum\Enum\SubscriptionNotificationType; use Icon; use PersonalNotifications; -use Forum\ForumDiscussion; -use Forum\ForumPosting; -use Forum\ForumSubscription; -use Forum\ForumTopic; +use Forum\Discussion; +use Forum\Posting; +use Forum\Subscription; +use Forum\Topic; use URLHelper; class PostingNotification { - protected ForumPosting $posting; - protected ForumDiscussion $discussion; - protected ForumTopic $topic; + protected Posting $posting; + protected Discussion $discussion; + protected Topic $topic; - public function __construct(ForumPosting $posting) + public function __construct(Posting $posting) { $this->posting = $posting; $this->topic = $posting->discussion->topic; @@ -60,7 +60,7 @@ class PostingNotification $query[1]['user_id'] = $excludeUserId; } - $subscriptions = ForumSubscription::findBySQL(...$query); + $subscriptions = Subscription::findBySQL(...$query); /** * Allow only one subscription per user. @@ -89,7 +89,7 @@ class PostingNotification return array_values($filteredSubscriptions); } - protected function sendNotifications(ForumSubscription $subscriber): void + protected function sendNotifications(Subscription $subscriber): void { $url = URLHelper::getURL('dispatch.php/course/forum/discussions/show/'.$this->discussion->discussion_id, ['cid' => $this->topic->range_id], true)."#post_" . $this->posting->posting_id; @@ -107,11 +107,11 @@ class PostingNotification ); } - protected function notifyParentPostAuthor(): ?ForumSubscription + protected function notifyParentPostAuthor(): ?Subscription { $parent = $this->posting->posting; - $subscriber = ForumSubscription::findOneBySQL( + $subscriber = Subscription::findOneBySQL( "range_id = :range_id AND subject_id IN (:subject_ids) AND user_id = :user_id AND notification_type != :notification_type ORDER BY subject", [ 'range_id' => $parent->range_id, diff --git a/lib/classes/JsonApi/RouteMap.php b/lib/classes/JsonApi/RouteMap.php index 176c1ea..235f4b6 100644 --- a/lib/classes/JsonApi/RouteMap.php +++ b/lib/classes/JsonApi/RouteMap.php @@ -674,54 +674,53 @@ class RouteMap private function addAuthenticatedForumRoutes(RouteCollectorProxy $group): void { $group->group('/courses/{range_id}', function ($forum) { - $forum->get('/forum-configs', Routes\Forum\ForumConfigIndex::class); - $forum->get('/forum-categories', Routes\Forum\ForumCategoryIndex::class); - $forum->get('/forum-discussions', Routes\Forum\ForumDiscussionIndex::class); - $forum->get('/forum-topics', Routes\Forum\ForumTopicIndex::class); - $forum->get('/forum-subscriptions', Routes\Forum\ForumSubscriptionIndex::class); + $forum->get('/forum-configs', Routes\Forum\ConfigIndex::class); + $forum->get('/forum-categories', Routes\Forum\CategoryIndex::class); + $forum->get('/forum-discussions', Routes\Forum\DiscussionIndex::class); + $forum->get('/forum-topics', Routes\Forum\TopicIndex::class); + $forum->get('/forum-subscriptions', Routes\Forum\SubscriptionIndex::class); }); $group->group('/forum-subscriptions', function ($forum) { - $forum->post('', Routes\Forum\ForumSubscriptionStore::class); - $forum->get('/{subscription_id}', Routes\Forum\ForumSubscriptionShow::class); - $forum->delete('/{subscription_id}', Routes\Forum\ForumSubscriptionDelete::class); + $forum->post('', Routes\Forum\SubscriptionStore::class); + $forum->get('/{subscription_id}', Routes\Forum\SubscriptionShow::class); + $forum->delete('/{subscription_id}', Routes\Forum\SubscriptionDelete::class); }); $group->group('/forum-topics', function ($forum) { - $forum->get('/{topic_id}', Routes\Forum\ForumTopicShow::class); - $forum->get('/{topic_id}/discussions', Routes\Forum\ForumTopicDiscussions::class); - $forum->patch('/sort', Routes\Forum\ForumTopicUpdateSort::class); + $forum->get('/{topic_id}', Routes\Forum\TopicShow::class); + $forum->get('/{topic_id}/discussions', Routes\Forum\TopicDiscussions::class); + $forum->patch('/sort', Routes\Forum\TopicUpdateSort::class); }); $group->group('/forum-categories', function ($forum) { - $forum->get('/{category_id}', Routes\Forum\ForumCategoryShow::class); - $forum->get('/{category_id}/topics', Routes\Forum\ForumCategoryTopics::class); - $forum->patch('/sort', Routes\Forum\ForumCategoryUpdateSort::class); + $forum->get('/{category_id}', Routes\Forum\CategoryShow::class); + $forum->get('/{category_id}/topics', Routes\Forum\CategoryTopics::class); + $forum->patch('/sort', Routes\Forum\CategoryUpdateSort::class); }); $group->group('/forum-discussion-types', function ($forum) { - $forum->get('', Routes\Forum\ForumDiscussionTypeIndex::class); - $forum->get('/{type_id}', Routes\Forum\ForumDiscussionTypeShow::class); - $forum->get('/{type_id}/discussions', Routes\Forum\ForumDiscussionTypeDiscussions::class); + $forum->get('', Routes\Forum\DiscussionTypeIndex::class); + $forum->get('/{type_id}', Routes\Forum\DiscussionTypeShow::class); }); $group->group('/forum-discussions', function ($forum) { - $forum->get('/{discussion_id}', Routes\Forum\ForumDiscussionShow::class); - $forum->get('/{discussion_id}/postings', Routes\Forum\ForumDiscussionPostings::class); + $forum->get('/{discussion_id}', Routes\Forum\DiscussionShow::class); + $forum->get('/{discussion_id}/postings', Routes\Forum\DiscussionPostings::class); }); $group->group('/forum-postings', function ($forum) { - $forum->post('', Routes\Forum\ForumPostingStore::class); - $forum->get('/{posting_id}', Routes\Forum\ForumPostingShow::class); - $forum->get('/{posting_id}/reactions', Routes\Forum\ForumPostingReactions::class); - $forum->patch('/{posting_id}', Routes\Forum\ForumPostingUpdate::class); - $forum->delete('/{posting_id}', Routes\Forum\ForumPostingDelete::class); + $forum->post('', Routes\Forum\PostingStore::class); + $forum->get('/{posting_id}', Routes\Forum\PostingShow::class); + $forum->get('/{posting_id}/reactions', Routes\Forum\PostingReactions::class); + $forum->patch('/{posting_id}', Routes\Forum\PostingUpdate::class); + $forum->delete('/{posting_id}', Routes\Forum\PostingDelete::class); }); $group->group('/forum-posting-reactions', function ($forum) { - $forum->post('', Routes\Forum\ForumPostingReactionStore::class); - $forum->get('/{reaction_id}', Routes\Forum\ForumPostingReactionShow::class); - $forum->delete('/{reaction_id}', Routes\Forum\ForumPostingReactionDelete::class); + $forum->post('', Routes\Forum\PostingReactionStore::class); + $forum->get('/{reaction_id}', Routes\Forum\PostingReactionShow::class); + $forum->delete('/{reaction_id}', Routes\Forum\PostingReactionDelete::class); }); } diff --git a/lib/classes/JsonApi/Routes/Forum/Authority.php b/lib/classes/JsonApi/Routes/Forum/Authority.php new file mode 100644 index 0000000..95091a0 --- /dev/null +++ b/lib/classes/JsonApi/Routes/Forum/Authority.php @@ -0,0 +1,13 @@ +<?php +namespace JsonApi\Routes\Forum; + +use Range; +use User; + +class Authority +{ + public static function canShowForum(?User $user, Range $range): bool + { + return $range->isAccessibleToUser($user?->user_id); + } +} diff --git a/lib/classes/JsonApi/Routes/Forum/ForumCategoryIndex.php b/lib/classes/JsonApi/Routes/Forum/CategoryIndex.php index 9518736..caa3c7f 100644 --- a/lib/classes/JsonApi/Routes/Forum/ForumCategoryIndex.php +++ b/lib/classes/JsonApi/Routes/Forum/CategoryIndex.php @@ -3,17 +3,16 @@ namespace JsonApi\Routes\Forum; use JsonApi\Errors\AuthorizationFailedException; use JsonApi\Errors\RecordNotFoundException; -use JsonApi\Routes\RangeAuthority; use Psr\Http\Message\ServerRequestInterface as Request; use Psr\Http\Message\ResponseInterface as Response; use JsonApi\JsonApiController; -use Forum\ForumCategory; +use Forum\Category; -class ForumCategoryIndex extends JsonApiController +class CategoryIndex extends JsonApiController { protected $allowedPagingParameters = ['offset', 'limit']; protected $allowedIncludePaths = [ - \JsonApi\Schemas\Forum\ForumCategory::REL_TOPICS + \JsonApi\Schemas\Forum\Category::REL_TOPICS ]; public function __invoke(Request $request, Response $response, $args) @@ -24,11 +23,11 @@ class ForumCategoryIndex extends JsonApiController } $user = $this->getUser($request); - if (!RangeAuthority::canShowRange($user, $range)) { + if (!Authority::canShowForum($user, $range)) { throw new AuthorizationFailedException(); } - $categories = ForumCategory::getCourseCategories($range->id); + $categories = Category::getCourseCategories($range->id); return $this->getPaginatedContentResponse( array_slice($categories, ...$this->getOffsetAndLimit()), diff --git a/lib/classes/JsonApi/Routes/Forum/ForumCategoryShow.php b/lib/classes/JsonApi/Routes/Forum/CategoryShow.php index f0ee1e1..4014536 100644 --- a/lib/classes/JsonApi/Routes/Forum/ForumCategoryShow.php +++ b/lib/classes/JsonApi/Routes/Forum/CategoryShow.php @@ -1,23 +1,22 @@ <?php namespace JsonApi\Routes\Forum; -use Forum\ForumCategory; +use Forum\Category; use JsonApi\Errors\AuthorizationFailedException; use JsonApi\Errors\RecordNotFoundException; -use JsonApi\Routes\RangeAuthority; use Psr\Http\Message\ServerRequestInterface as Request; use Psr\Http\Message\ResponseInterface as Response; use JsonApi\JsonApiController; -class ForumCategoryShow extends JsonApiController +class CategoryShow extends JsonApiController { protected $allowedIncludePaths = [ - \JsonApi\Schemas\Forum\ForumCategory::REL_TOPICS + \JsonApi\Schemas\Forum\Category::REL_TOPICS ]; public function __invoke(Request $request, Response $response, $args) { - $category = ForumCategory::find($args['category_id']); + $category = Category::find($args['category_id']); if (!$category) { throw new RecordNotFoundException(); } @@ -28,7 +27,7 @@ class ForumCategoryShow extends JsonApiController } $user = $this->getUser($request); - if (!RangeAuthority::canShowRange($user, $range)) { + if (!Authority::canShowForum($user, $range)) { throw new AuthorizationFailedException(); } diff --git a/lib/classes/JsonApi/Routes/Forum/ForumCategoryTopics.php b/lib/classes/JsonApi/Routes/Forum/CategoryTopics.php index cfa7937..10d47b4 100644 --- a/lib/classes/JsonApi/Routes/Forum/ForumCategoryTopics.php +++ b/lib/classes/JsonApi/Routes/Forum/CategoryTopics.php @@ -2,23 +2,22 @@ namespace JsonApi\Routes\Forum; use JsonApi\Errors\RecordNotFoundException; -use JsonApi\Routes\RangeAuthority; use Psr\Http\Message\ServerRequestInterface as Request; use Psr\Http\Message\ResponseInterface as Response; use JsonApi\Errors\AuthorizationFailedException; use JsonApi\JsonApiController; -use Forum\ForumCategory; +use Forum\Category; -class ForumCategoryTopics extends JsonApiController +class CategoryTopics extends JsonApiController { protected $allowedPagingParameters = ['offset', 'limit']; protected $allowedIncludePaths = [ - \JsonApi\Schemas\Forum\ForumCategory::REL_TOPICS + \JsonApi\Schemas\Forum\Category::REL_TOPICS ]; public function __invoke(Request $request, Response $response, $args) { - $category = ForumCategory::find($args['category_id']); + $category = Category::find($args['category_id']); if (!$category) { throw new RecordNotFoundException(); } @@ -29,7 +28,7 @@ class ForumCategoryTopics extends JsonApiController } $user = $this->getUser($request); - if (!RangeAuthority::canShowRange($user, $range)) { + if (!Authority::canShowForum($user, $range)) { throw new AuthorizationFailedException(); } diff --git a/lib/classes/JsonApi/Routes/Forum/ForumCategoryUpdateSort.php b/lib/classes/JsonApi/Routes/Forum/CategoryUpdateSort.php index 39fbb9d..b1eb6b2 100644 --- a/lib/classes/JsonApi/Routes/Forum/ForumCategoryUpdateSort.php +++ b/lib/classes/JsonApi/Routes/Forum/CategoryUpdateSort.php @@ -8,9 +8,9 @@ use Psr\Http\Message\ResponseInterface as Response; use JsonApi\Errors\AuthorizationFailedException; use JsonApi\JsonApiController; use JsonApi\Routes\ValidationTrait; -use Forum\ForumCategory; +use Forum\Category; -class ForumCategoryUpdateSort extends JsonApiController +class CategoryUpdateSort extends JsonApiController { use ValidationTrait; @@ -30,8 +30,8 @@ class ForumCategoryUpdateSort extends JsonApiController $category_ids = self::arrayGet($json, 'data.attributes.category-ids'); - ForumCategory::findEachBySQL( - function (ForumCategory $category) use ($category_ids) { + Category::findEachBySQL( + function (Category $category) use ($category_ids) { $category->position = (int) array_search($category->category_id, $category_ids); $category->store(); }, diff --git a/lib/classes/JsonApi/Routes/Forum/ForumConfigIndex.php b/lib/classes/JsonApi/Routes/Forum/ConfigIndex.php index 507e2de..8383608 100644 --- a/lib/classes/JsonApi/Routes/Forum/ForumConfigIndex.php +++ b/lib/classes/JsonApi/Routes/Forum/ConfigIndex.php @@ -4,7 +4,6 @@ namespace JsonApi\Routes\Forum; use Config; use CoreForum; -use JsonApi\Routes\RangeAuthority; use UserConfig; use JsonApi\Errors\AuthorizationFailedException; use JsonApi\Errors\RecordNotFoundException; @@ -12,7 +11,7 @@ use Psr\Http\Message\ServerRequestInterface as Request; use Psr\Http\Message\ResponseInterface as Response; use JsonApi\JsonApiController; -class ForumConfigIndex extends JsonApiController +class ConfigIndex extends JsonApiController { public function __invoke(Request $request, Response $response, $args) { @@ -22,7 +21,7 @@ class ForumConfigIndex extends JsonApiController } $user = $this->getUser($request); - if (!RangeAuthority::canShowRange($user, $range)) { + if (!Authority::canShowForum($user, $range)) { throw new AuthorizationFailedException(); } diff --git a/lib/classes/JsonApi/Routes/Forum/ForumDiscussionIndex.php b/lib/classes/JsonApi/Routes/Forum/DiscussionIndex.php index 83af8ac..91b5c06 100644 --- a/lib/classes/JsonApi/Routes/Forum/ForumDiscussionIndex.php +++ b/lib/classes/JsonApi/Routes/Forum/DiscussionIndex.php @@ -3,13 +3,12 @@ namespace JsonApi\Routes\Forum; use JsonApi\Errors\AuthorizationFailedException; use JsonApi\Errors\RecordNotFoundException; -use JsonApi\Routes\RangeAuthority; use Psr\Http\Message\ServerRequestInterface as Request; use Psr\Http\Message\ResponseInterface as Response; use JsonApi\JsonApiController; -use Forum\ForumDiscussion; +use Forum\Discussion; -class ForumDiscussionIndex extends JsonApiController +class DiscussionIndex extends JsonApiController { protected $allowedPagingParameters = ['offset', 'limit']; protected $allowedFilteringParameters = [ @@ -24,12 +23,12 @@ class ForumDiscussionIndex extends JsonApiController 'status' ]; protected $allowedIncludePaths = [ - \JsonApi\Schemas\Forum\ForumCategory::REL_TOPICS, - \JsonApi\Schemas\Forum\ForumDiscussion::REL_CATEGORY, - \JsonApi\Schemas\Forum\ForumDiscussion::REL_USER, - \JsonApi\Schemas\Forum\ForumDiscussion::REL_DISCUSSION_TYPE, - \JsonApi\Schemas\Forum\ForumDiscussion::REL_MEMBERS, - \JsonApi\Schemas\Forum\ForumDiscussion::REL_TAGS + \JsonApi\Schemas\Forum\Category::REL_TOPICS, + \JsonApi\Schemas\Forum\Discussion::REL_CATEGORY, + \JsonApi\Schemas\Forum\Discussion::REL_USER, + \JsonApi\Schemas\Forum\Discussion::REL_DISCUSSION_TYPE, + \JsonApi\Schemas\Forum\Discussion::REL_MEMBERS, + \JsonApi\Schemas\Forum\Discussion::REL_TAGS ]; @@ -41,7 +40,7 @@ class ForumDiscussionIndex extends JsonApiController } $user = $this->getUser($request); - if (!RangeAuthority::canShowRange($user, $range)) { + if (!Authority::canShowForum($user, $range)) { throw new AuthorizationFailedException(); } @@ -50,7 +49,7 @@ class ForumDiscussionIndex extends JsonApiController $_SESSION['forum'][$range->id]['search_filter'] = $filters; } - $discussions = ForumDiscussion::getCourseDiscussions($range->id, $filters); + $discussions = Discussion::getCourseDiscussions($range->id, $filters); return $this->getPaginatedContentResponse( array_slice($discussions, ...$this->getOffsetAndLimit()), diff --git a/lib/classes/JsonApi/Routes/Forum/ForumDiscussionPostings.php b/lib/classes/JsonApi/Routes/Forum/DiscussionPostings.php index 2e07c87..8b64021 100644 --- a/lib/classes/JsonApi/Routes/Forum/ForumDiscussionPostings.php +++ b/lib/classes/JsonApi/Routes/Forum/DiscussionPostings.php @@ -1,30 +1,29 @@ <?php namespace JsonApi\Routes\Forum; -use Forum\ForumDiscussion; +use Forum\Discussion; use JsonApi\Errors\AuthorizationFailedException; use JsonApi\Errors\RecordNotFoundException; -use JsonApi\Routes\RangeAuthority; use Psr\Http\Message\ServerRequestInterface as Request; use Psr\Http\Message\ResponseInterface as Response; use JsonApi\JsonApiController; -use Forum\ForumPostingRead; +use Forum\PostingRead; -class ForumDiscussionPostings extends JsonApiController +class DiscussionPostings extends JsonApiController { protected $allowedPagingParameters = ['offset', 'limit']; protected $allowedIncludePaths = [ - \JsonApi\Schemas\Forum\ForumPosting::REL_DISCUSSION, - \JsonApi\Schemas\Forum\ForumPosting::REL_POSTING, - \JsonApi\Schemas\Forum\ForumPosting::REL_OPENGRAPH_URLS, - \JsonApi\Schemas\Forum\ForumPosting::REL_AUTHOR, - \JsonApi\Schemas\Forum\ForumPosting::REL_REACTIONS, - \JsonApi\Schemas\Forum\ForumPosting::REL_REACTIONS_USER + \JsonApi\Schemas\Forum\Posting::REL_DISCUSSION, + \JsonApi\Schemas\Forum\Posting::REL_POSTING, + \JsonApi\Schemas\Forum\Posting::REL_OPENGRAPH_URLS, + \JsonApi\Schemas\Forum\Posting::REL_AUTHOR, + \JsonApi\Schemas\Forum\Posting::REL_REACTIONS, + \JsonApi\Schemas\Forum\Posting::REL_REACTIONS_USER ]; public function __invoke(Request $request, Response $response, $args) { - $discussion = ForumDiscussion::find($args['discussion_id']); + $discussion = Discussion::find($args['discussion_id']); if (!$discussion) { throw new RecordNotFoundException(); } @@ -35,13 +34,13 @@ class ForumDiscussionPostings extends JsonApiController } $user = $this->getUser($request); - if (!RangeAuthority::canShowRange($user, $range)) { + if (!Authority::canShowForum($user, $range)) { throw new AuthorizationFailedException(); } $postings = $discussion->postings ?? \SimpleORMapCollection::createFromArray([]); - ForumPostingRead::updateUserReadPoint($user->user_id, $discussion->discussion_id, count($postings)); + PostingRead::updateUserReadPoint($user->user_id, $discussion->discussion_id, count($postings)); return $this->getPaginatedContentResponse( $postings->limit(...$this->getOffsetAndLimit()), diff --git a/lib/classes/JsonApi/Routes/Forum/ForumDiscussionShow.php b/lib/classes/JsonApi/Routes/Forum/DiscussionShow.php index 93bc970..4dc2821 100644 --- a/lib/classes/JsonApi/Routes/Forum/ForumDiscussionShow.php +++ b/lib/classes/JsonApi/Routes/Forum/DiscussionShow.php @@ -1,26 +1,25 @@ <?php namespace JsonApi\Routes\Forum; -use Forum\ForumDiscussion; +use Forum\Discussion; use JsonApi\Errors\AuthorizationFailedException; use JsonApi\Errors\RecordNotFoundException; -use JsonApi\Routes\RangeAuthority; use Psr\Http\Message\ServerRequestInterface as Request; use Psr\Http\Message\ResponseInterface as Response; use JsonApi\JsonApiController; -class ForumDiscussionShow extends JsonApiController +class DiscussionShow extends JsonApiController { protected $allowedIncludePaths = [ - \JsonApi\Schemas\Forum\ForumDiscussion::REL_POSTINGS, - \JsonApi\Schemas\Forum\ForumCategory::REL_TOPICS, - \JsonApi\Schemas\Forum\ForumDiscussion::REL_CATEGORY, - \JsonApi\Schemas\Forum\ForumDiscussion::REL_DISCUSSION_TYPE + \JsonApi\Schemas\Forum\Discussion::REL_POSTINGS, + \JsonApi\Schemas\Forum\Category::REL_TOPICS, + \JsonApi\Schemas\Forum\Discussion::REL_CATEGORY, + \JsonApi\Schemas\Forum\Discussion::REL_DISCUSSION_TYPE ]; public function __invoke(Request $request, Response $response, $args) { - $discussion = ForumDiscussion::find($args['discussion_id']); + $discussion = Discussion::find($args['discussion_id']); if (!$discussion) { throw new RecordNotFoundException(); } @@ -31,7 +30,7 @@ class ForumDiscussionShow extends JsonApiController } $user = $this->getUser($request); - if (!RangeAuthority::canShowRange($user, $range)) { + if (!Authority::canShowForum($user, $range)) { throw new AuthorizationFailedException(); } diff --git a/lib/classes/JsonApi/Routes/Forum/ForumDiscussionTypeIndex.php b/lib/classes/JsonApi/Routes/Forum/DiscussionTypeIndex.php index 75f9750..cd32b90 100644 --- a/lib/classes/JsonApi/Routes/Forum/ForumDiscussionTypeIndex.php +++ b/lib/classes/JsonApi/Routes/Forum/DiscussionTypeIndex.php @@ -1,22 +1,22 @@ <?php namespace JsonApi\Routes\Forum; -use Forum\ForumDiscussionType; +use Forum\DiscussionType; use JsonApi\Errors\BadRequestException; use Psr\Http\Message\ServerRequestInterface as Request; use Psr\Http\Message\ResponseInterface as Response; use JsonApi\JsonApiController; -class ForumDiscussionTypeIndex extends JsonApiController +class DiscussionTypeIndex extends JsonApiController { protected $allowedPagingParameters = ['offset', 'limit']; protected $allowedIncludePaths = [ - \JsonApi\Schemas\Forum\ForumDiscussionType::REL_DISCUSSIONS + \JsonApi\Schemas\Forum\DiscussionType::REL_DISCUSSIONS ]; public function __invoke(Request $request, Response $response, $args) { - $discussion_types = ForumDiscussionType::findBySQL('1'); + $discussion_types = DiscussionType::findBySQL('1'); return $this->getPaginatedContentResponse( array_slice($discussion_types, ...$this->getOffsetAndLimit()), diff --git a/lib/classes/JsonApi/Routes/Forum/ForumDiscussionTypeShow.php b/lib/classes/JsonApi/Routes/Forum/DiscussionTypeShow.php index a3e37d9..939835a 100644 --- a/lib/classes/JsonApi/Routes/Forum/ForumDiscussionTypeShow.php +++ b/lib/classes/JsonApi/Routes/Forum/DiscussionTypeShow.php @@ -1,21 +1,21 @@ <?php namespace JsonApi\Routes\Forum; -use Forum\ForumDiscussionType; +use Forum\DiscussionType; use JsonApi\Errors\RecordNotFoundException; use Psr\Http\Message\ServerRequestInterface as Request; use Psr\Http\Message\ResponseInterface as Response; use JsonApi\JsonApiController; -class ForumDiscussionTypeShow extends JsonApiController +class DiscussionTypeShow extends JsonApiController { protected $allowedIncludePaths = [ - \JsonApi\Schemas\Forum\ForumDiscussionType::REL_DISCUSSIONS + \JsonApi\Schemas\Forum\DiscussionType::REL_DISCUSSIONS ]; public function __invoke(Request $request, Response $response, $args) { - $discussion_type = ForumDiscussionType::find($args['type_id']); + $discussion_type = DiscussionType::find($args['type_id']); if (!$discussion_type) { throw new RecordNotFoundException(); } diff --git a/lib/classes/JsonApi/Routes/Forum/ForumDiscussionTypeDiscussions.php b/lib/classes/JsonApi/Routes/Forum/ForumDiscussionTypeDiscussions.php deleted file mode 100644 index 6db27ab..0000000 --- a/lib/classes/JsonApi/Routes/Forum/ForumDiscussionTypeDiscussions.php +++ /dev/null @@ -1,32 +0,0 @@ -<?php -namespace JsonApi\Routes\Forum; - -use Forum\ForumDiscussionType; -use JsonApi\Errors\RecordNotFoundException; -use Psr\Http\Message\ServerRequestInterface as Request; -use Psr\Http\Message\ResponseInterface as Response; -use JsonApi\JsonApiController; - -class ForumDiscussionTypeDiscussions extends JsonApiController -{ - protected $allowedPagingParameters = ['offset', 'limit']; - protected $allowedIncludePaths = [ - \JsonApi\Schemas\Forum\ForumDiscussionType::REL_DISCUSSIONS, - \JsonApi\Schemas\Forum\ForumDiscussion::REL_USER, - ]; - - public function __invoke(Request $request, Response $response, $args) - { - $discussionType = ForumDiscussionType::find($args['type_id']); - if (!$discussionType) { - throw new RecordNotFoundException(); - } - - $discussions = $discussionType->discussions; - - return $this->getPaginatedContentResponse( - array_slice($discussions, ...$this->getOffsetAndLimit()), - count($discussions) - ); - } -} diff --git a/lib/classes/JsonApi/Routes/Forum/ForumPostingDelete.php b/lib/classes/JsonApi/Routes/Forum/PostingDelete.php index 9929b14..e49755d 100644 --- a/lib/classes/JsonApi/Routes/Forum/ForumPostingDelete.php +++ b/lib/classes/JsonApi/Routes/Forum/PostingDelete.php @@ -7,15 +7,15 @@ use JsonApi\Routes\Courses\Authority as CourseAuthority; use Psr\Http\Message\ServerRequestInterface as Request; use Psr\Http\Message\ResponseInterface as Response; use JsonApi\JsonApiController; -use Forum\ForumPosting; +use Forum\Posting; -class ForumPostingDelete extends JsonApiController +class PostingDelete extends JsonApiController { public function __invoke(Request $request, Response $response, $args) { $user = $this->getUser($request); - $posting = ForumPosting::findOneBySQL( + $posting = Posting::findOneBySQL( "posting_id = :posting_id AND user_id = :user_id", [ 'posting_id' => $args['posting_id'], diff --git a/lib/classes/JsonApi/Routes/Forum/ForumPostingReactionDelete.php b/lib/classes/JsonApi/Routes/Forum/PostingReactionDelete.php index 6e5ff35..7849815 100644 --- a/lib/classes/JsonApi/Routes/Forum/ForumPostingReactionDelete.php +++ b/lib/classes/JsonApi/Routes/Forum/PostingReactionDelete.php @@ -5,15 +5,15 @@ use JsonApi\Errors\RecordNotFoundException; use Psr\Http\Message\ServerRequestInterface as Request; use Psr\Http\Message\ResponseInterface as Response; use JsonApi\JsonApiController; -use Forum\ForumPostingReaction; +use Forum\PostingReaction; -class ForumPostingReactionDelete extends JsonApiController +class PostingReactionDelete extends JsonApiController { public function __invoke(Request $request, Response $response, $args) { $user = $this->getUser($request); - $posting_reaction = ForumPostingReaction::findOneBySQL( + $posting_reaction = PostingReaction::findOneBySQL( "id = :reaction_id AND user_id = :user_id", [ 'reaction_id' => $args['reaction_id'], diff --git a/lib/classes/JsonApi/Routes/Forum/ForumPostingReactionShow.php b/lib/classes/JsonApi/Routes/Forum/PostingReactionShow.php index 0df6931..fb658b9 100644 --- a/lib/classes/JsonApi/Routes/Forum/ForumPostingReactionShow.php +++ b/lib/classes/JsonApi/Routes/Forum/PostingReactionShow.php @@ -1,22 +1,22 @@ <?php namespace JsonApi\Routes\Forum; -use Forum\ForumPostingReaction; +use Forum\PostingReaction; use JsonApi\Errors\RecordNotFoundException; use Psr\Http\Message\ServerRequestInterface as Request; use Psr\Http\Message\ResponseInterface as Response; use JsonApi\JsonApiController; -class ForumPostingReactionShow extends JsonApiController +class PostingReactionShow extends JsonApiController { protected $allowedIncludePaths = [ - \JsonApi\Schemas\Forum\ForumPostingReaction::REL_POSTING, - \JsonApi\Schemas\Forum\ForumPostingReaction::REL_USER, + \JsonApi\Schemas\Forum\PostingReaction::REL_POSTING, + \JsonApi\Schemas\Forum\PostingReaction::REL_USER, ]; public function __invoke(Request $request, Response $response, $args) { - $posting_reaction = ForumPostingReaction::find($args['reaction_id']); + $posting_reaction = PostingReaction::find($args['reaction_id']); if (!$posting_reaction) { throw new RecordNotFoundException(); } diff --git a/lib/classes/JsonApi/Routes/Forum/ForumPostingReactionStore.php b/lib/classes/JsonApi/Routes/Forum/PostingReactionStore.php index a913e9b..992cf0d 100644 --- a/lib/classes/JsonApi/Routes/Forum/ForumPostingReactionStore.php +++ b/lib/classes/JsonApi/Routes/Forum/PostingReactionStore.php @@ -4,20 +4,19 @@ namespace JsonApi\Routes\Forum; use JsonApi\Errors\AuthorizationFailedException; use JsonApi\Errors\BadRequestException; use JsonApi\Errors\RecordNotFoundException; -use JsonApi\Routes\RangeAuthority; use Psr\Http\Message\ServerRequestInterface as Request; use Psr\Http\Message\ResponseInterface as Response; use JsonApi\JsonApiController; use JsonApi\Routes\ValidationTrait; -use Forum\ForumPosting; -use Forum\ForumPostingReaction; +use Forum\Posting; +use Forum\PostingReaction; -class ForumPostingReactionStore extends JsonApiController +class PostingReactionStore extends JsonApiController { use ValidationTrait; protected $allowedIncludePaths = [ - \JsonApi\Schemas\Forum\ForumPostingReaction::REL_USER + \JsonApi\Schemas\Forum\PostingReaction::REL_USER ]; public function __invoke(Request $request, Response $response, $args) @@ -25,7 +24,7 @@ class ForumPostingReactionStore extends JsonApiController $json = $this->validate($request); $user = $this->getUser($request); - $posting = ForumPosting::find(self::arrayGet($json, 'data.relationships.posting.data.id')); + $posting = Posting::find(self::arrayGet($json, 'data.relationships.posting.data.id')); if (!$posting) { throw new BadRequestException(); } @@ -35,11 +34,11 @@ class ForumPostingReactionStore extends JsonApiController throw new RecordNotFoundException(); } - if (!RangeAuthority::canShowRange($user, $range)) { + if (!Authority::canShowForum($user, $range)) { throw new AuthorizationFailedException(); } - $posting_reaction = ForumPostingReaction::create([ + $posting_reaction = PostingReaction::create([ 'posting_id' => $posting->posting_id, 'user_id' => $user->user_id, 'emoji' => self::arrayGet($json, 'data.attributes.emoji') diff --git a/lib/classes/JsonApi/Routes/Forum/ForumPostingReactions.php b/lib/classes/JsonApi/Routes/Forum/PostingReactions.php index 9c6a182..12caad4 100644 --- a/lib/classes/JsonApi/Routes/Forum/ForumPostingReactions.php +++ b/lib/classes/JsonApi/Routes/Forum/PostingReactions.php @@ -1,26 +1,25 @@ <?php namespace JsonApi\Routes\Forum; -use Forum\ForumPosting; +use Forum\Posting; use JsonApi\Errors\AuthorizationFailedException; use JsonApi\Errors\RecordNotFoundException; -use JsonApi\Routes\RangeAuthority; use Psr\Http\Message\ServerRequestInterface as Request; use Psr\Http\Message\ResponseInterface as Response; use JsonApi\JsonApiController; use SimpleORMapCollection; -class ForumPostingReactions extends JsonApiController +class PostingReactions extends JsonApiController { protected $allowedPagingParameters = ['offset', 'limit']; protected $allowedIncludePaths = [ - \JsonApi\Schemas\Forum\ForumPostingReaction::REL_POSTING, - \JsonApi\Schemas\Forum\ForumPostingReaction::REL_USER + \JsonApi\Schemas\Forum\PostingReaction::REL_POSTING, + \JsonApi\Schemas\Forum\PostingReaction::REL_USER ]; public function __invoke(Request $request, Response $response, $args) { - $posting = ForumPosting::find($args['posting_id']); + $posting = Posting::find($args['posting_id']); if (!$posting) { throw new RecordNotFoundException(); } @@ -31,7 +30,7 @@ class ForumPostingReactions extends JsonApiController } $user = $this->getUser($request); - if (!RangeAuthority::canShowRange($user, $range)) { + if (!Authority::canShowForum($user, $range)) { throw new AuthorizationFailedException(); } diff --git a/lib/classes/JsonApi/Routes/Forum/ForumPostingShow.php b/lib/classes/JsonApi/Routes/Forum/PostingShow.php index 4a810b2..c062169 100644 --- a/lib/classes/JsonApi/Routes/Forum/ForumPostingShow.php +++ b/lib/classes/JsonApi/Routes/Forum/PostingShow.php @@ -1,27 +1,26 @@ <?php namespace JsonApi\Routes\Forum; -use Forum\ForumPosting; +use Forum\Posting; use JsonApi\Errors\AuthorizationFailedException; use JsonApi\Errors\RecordNotFoundException; -use JsonApi\Routes\RangeAuthority; use Psr\Http\Message\ServerRequestInterface as Request; use Psr\Http\Message\ResponseInterface as Response; use JsonApi\JsonApiController; -class ForumPostingShow extends JsonApiController +class PostingShow extends JsonApiController { protected $allowedIncludePaths = [ - \JsonApi\Schemas\Forum\ForumPosting::REL_DISCUSSION, - \JsonApi\Schemas\Forum\ForumPosting::REL_POSTING, - \JsonApi\Schemas\Forum\ForumPosting::REL_OPENGRAPH_URLS, - \JsonApi\Schemas\Forum\ForumPosting::REL_REACTIONS, - \JsonApi\Schemas\Forum\ForumPosting::REL_REACTIONS_USER + \JsonApi\Schemas\Forum\Posting::REL_DISCUSSION, + \JsonApi\Schemas\Forum\Posting::REL_POSTING, + \JsonApi\Schemas\Forum\Posting::REL_OPENGRAPH_URLS, + \JsonApi\Schemas\Forum\Posting::REL_REACTIONS, + \JsonApi\Schemas\Forum\Posting::REL_REACTIONS_USER ]; public function __invoke(Request $request, Response $response, $args) { - $posting = ForumPosting::find($args['posting_id']); + $posting = Posting::find($args['posting_id']); if (!$posting) { throw new RecordNotFoundException(); } @@ -32,7 +31,7 @@ class ForumPostingShow extends JsonApiController } $user = $this->getUser($request); - if (!RangeAuthority::canShowRange($user, $range)) { + if (!Authority::canShowForum($user, $range)) { throw new AuthorizationFailedException(); } diff --git a/lib/classes/JsonApi/Routes/Forum/ForumPostingStore.php b/lib/classes/JsonApi/Routes/Forum/PostingStore.php index 70c5792..f7a667e 100644 --- a/lib/classes/JsonApi/Routes/Forum/ForumPostingStore.php +++ b/lib/classes/JsonApi/Routes/Forum/PostingStore.php @@ -2,7 +2,6 @@ namespace JsonApi\Routes\Forum; use JsonApi\Errors\RecordNotFoundException; -use JsonApi\Routes\RangeAuthority; use Psr\Http\Message\ServerRequestInterface as Request; use Psr\Http\Message\ResponseInterface as Response; use JsonApi\Errors\AuthorizationFailedException; @@ -10,22 +9,22 @@ use JsonApi\JsonApiController; use JsonApi\Routes\ValidationTrait; use Forum\Enum\SubscriptionNotificationType; use Studip\Markup; -use Forum\ForumDiscussion; -use Forum\ForumPosting; -use Forum\ForumPostingRead; -use Forum\ForumSubscription; +use Forum\Discussion; +use Forum\Posting; +use Forum\PostingRead; +use Forum\Subscription; -class ForumPostingStore extends JsonApiController +class PostingStore extends JsonApiController { use ValidationTrait; protected $allowedIncludePaths = [ - \JsonApi\Schemas\Forum\ForumPosting::REL_DISCUSSION, - \JsonApi\Schemas\Forum\ForumPosting::REL_POSTING, - \JsonApi\Schemas\Forum\ForumPosting::REL_OPENGRAPH_URLS, - \JsonApi\Schemas\Forum\ForumPosting::REL_AUTHOR, - \JsonApi\Schemas\Forum\ForumPosting::REL_REACTIONS, - \JsonApi\Schemas\Forum\ForumPosting::REL_REACTIONS_USER + \JsonApi\Schemas\Forum\Posting::REL_DISCUSSION, + \JsonApi\Schemas\Forum\Posting::REL_POSTING, + \JsonApi\Schemas\Forum\Posting::REL_OPENGRAPH_URLS, + \JsonApi\Schemas\Forum\Posting::REL_AUTHOR, + \JsonApi\Schemas\Forum\Posting::REL_REACTIONS, + \JsonApi\Schemas\Forum\Posting::REL_REACTIONS_USER ]; public function __invoke(Request $request, Response $response, $args) @@ -33,7 +32,7 @@ class ForumPostingStore extends JsonApiController $json = $this->validate($request); $user = $this->getUser($request); - $discussion = ForumDiscussion::find(self::arrayGet($json, 'data.relationships.discussion.data.id')); + $discussion = Discussion::find(self::arrayGet($json, 'data.relationships.discussion.data.id')); $range = get_object_by_range_id($discussion->range_id); if (!$discussion || !$range) { @@ -41,7 +40,7 @@ class ForumPostingStore extends JsonApiController } if ( - !RangeAuthority::canShowRange($user, $range) || + !Authority::canShowForum($user, $range) || $discussion->closed_at ) { throw new AuthorizationFailedException(); @@ -49,7 +48,7 @@ class ForumPostingStore extends JsonApiController $parent_id = self::arrayGet($json, 'data.relationships.posting.data.id'); - $psoting = ForumPosting::create([ + $psoting = Posting::create([ 'range_id' => $discussion->range_id, 'parent_id' => $parent_id ?? null, 'discussion_id' => $discussion->discussion_id, @@ -58,7 +57,7 @@ class ForumPostingStore extends JsonApiController 'user_id' => $user->user_id ]); - $subscription = ForumSubscription::findOneBySQL( + $subscription = Subscription::findOneBySQL( "user_id = :user_id AND subject_id IN (:subject_ids)", [ 'user_id' => $user->user_id, @@ -67,7 +66,7 @@ class ForumPostingStore extends JsonApiController ); if (!$subscription) { - $subscription = new ForumSubscription(); + $subscription = new Subscription(); $subscription->user_id = $user->user_id; $subscription->range_id = $discussion->range_id; $subscription->subject_id = $discussion->discussion_id; @@ -76,7 +75,7 @@ class ForumPostingStore extends JsonApiController $subscription->store(); } - ForumPostingRead::updateUserReadPoint($user->user_id, $discussion->discussion_id); + PostingRead::updateUserReadPoint($user->user_id, $discussion->discussion_id); return $this->getCreatedResponse($psoting); } diff --git a/lib/classes/JsonApi/Routes/Forum/ForumPostingUpdate.php b/lib/classes/JsonApi/Routes/Forum/PostingUpdate.php index b8470fa..c720bb6 100644 --- a/lib/classes/JsonApi/Routes/Forum/ForumPostingUpdate.php +++ b/lib/classes/JsonApi/Routes/Forum/PostingUpdate.php @@ -8,19 +8,19 @@ use JsonApi\Errors\AuthorizationFailedException; use JsonApi\JsonApiController; use JsonApi\Routes\ValidationTrait; use Studip\Markup; -use Forum\ForumPosting; +use Forum\Posting; -class ForumPostingUpdate extends JsonApiController +class PostingUpdate extends JsonApiController { use ValidationTrait; protected $allowedIncludePaths = [ - \JsonApi\Schemas\Forum\ForumPosting::REL_DISCUSSION, - \JsonApi\Schemas\Forum\ForumPosting::REL_POSTING, - \JsonApi\Schemas\Forum\ForumPosting::REL_OPENGRAPH_URLS, - \JsonApi\Schemas\Forum\ForumPosting::REL_AUTHOR, - \JsonApi\Schemas\Forum\ForumPosting::REL_REACTIONS, - \JsonApi\Schemas\Forum\ForumPosting::REL_REACTIONS_USER + \JsonApi\Schemas\Forum\Posting::REL_DISCUSSION, + \JsonApi\Schemas\Forum\Posting::REL_POSTING, + \JsonApi\Schemas\Forum\Posting::REL_OPENGRAPH_URLS, + \JsonApi\Schemas\Forum\Posting::REL_AUTHOR, + \JsonApi\Schemas\Forum\Posting::REL_REACTIONS, + \JsonApi\Schemas\Forum\Posting::REL_REACTIONS_USER ]; public function __invoke(Request $request, Response $response, $args) @@ -28,7 +28,7 @@ class ForumPostingUpdate extends JsonApiController $json = $this->validate($request); $user = $this->getUser($request); - $posting = ForumPosting::findOneBySQL( + $posting = Posting::findOneBySQL( "posting_id = :posting_id AND user_id = :user_id", [ 'posting_id' => $args['posting_id'], diff --git a/lib/classes/JsonApi/Routes/Forum/ForumSubscriptionDelete.php b/lib/classes/JsonApi/Routes/Forum/SubscriptionDelete.php index fef6ac0..21ebe0b 100644 --- a/lib/classes/JsonApi/Routes/Forum/ForumSubscriptionDelete.php +++ b/lib/classes/JsonApi/Routes/Forum/SubscriptionDelete.php @@ -5,15 +5,15 @@ use JsonApi\Errors\RecordNotFoundException; use Psr\Http\Message\ServerRequestInterface as Request; use Psr\Http\Message\ResponseInterface as Response; use JsonApi\JsonApiController; -use Forum\ForumSubscription; +use Forum\Subscription; -class ForumSubscriptionDelete extends JsonApiController +class SubscriptionDelete extends JsonApiController { public function __invoke(Request $request, Response $response, $args) { $user = $this->getUser($request); - $subscription = ForumSubscription::findOneBySQL( + $subscription = Subscription::findOneBySQL( "id = :subscription_id AND user_id = :user_id", [ 'subscription_id' => $args['subscription_id'], diff --git a/lib/classes/JsonApi/Routes/Forum/ForumSubscriptionIndex.php b/lib/classes/JsonApi/Routes/Forum/SubscriptionIndex.php index 8e0cee8..b653a84 100644 --- a/lib/classes/JsonApi/Routes/Forum/ForumSubscriptionIndex.php +++ b/lib/classes/JsonApi/Routes/Forum/SubscriptionIndex.php @@ -3,19 +3,18 @@ namespace JsonApi\Routes\Forum; use JsonApi\Errors\AuthorizationFailedException; use JsonApi\Errors\RecordNotFoundException; -use JsonApi\Routes\RangeAuthority; use Psr\Http\Message\ServerRequestInterface as Request; use Psr\Http\Message\ResponseInterface as Response; use JsonApi\JsonApiController; -use Forum\ForumSubscription; +use Forum\Subscription; -class ForumSubscriptionIndex extends JsonApiController +class SubscriptionIndex extends JsonApiController { protected $allowedPagingParameters = ['offset', 'limit']; protected $allowedIncludePaths = [ - \JsonApi\Schemas\Forum\ForumSubscription::REL_RANGE, - \JsonApi\Schemas\Forum\ForumSubscription::REL_SUBJECT, - \JsonApi\Schemas\Forum\ForumSubscription::REL_USER + \JsonApi\Schemas\Forum\Subscription::REL_RANGE, + \JsonApi\Schemas\Forum\Subscription::REL_SUBJECT, + \JsonApi\Schemas\Forum\Subscription::REL_USER ]; public function __invoke(Request $request, Response $response, $args) @@ -26,11 +25,11 @@ class ForumSubscriptionIndex extends JsonApiController } $user = $this->getUser($request); - if (!RangeAuthority::canShowRange($user, $range)) { + if (!Authority::canShowForum($user, $range)) { throw new AuthorizationFailedException(); } - $subscriptions = ForumSubscription::getUserSubscriptions($range->id, $user->user_id); + $subscriptions = Subscription::getUserSubscriptions($range->id, $user->user_id); return $this->getPaginatedContentResponse( array_slice($subscriptions, ...$this->getOffsetAndLimit()), diff --git a/lib/classes/JsonApi/Routes/Forum/ForumSubscriptionShow.php b/lib/classes/JsonApi/Routes/Forum/SubscriptionShow.php index dd0854d..ce98f9a 100644 --- a/lib/classes/JsonApi/Routes/Forum/ForumSubscriptionShow.php +++ b/lib/classes/JsonApi/Routes/Forum/SubscriptionShow.php @@ -5,21 +5,21 @@ use JsonApi\Errors\RecordNotFoundException; use Psr\Http\Message\ServerRequestInterface as Request; use Psr\Http\Message\ResponseInterface as Response; use JsonApi\JsonApiController; -use Forum\ForumSubscription; +use Forum\Subscription; -class ForumSubscriptionShow extends JsonApiController +class SubscriptionShow extends JsonApiController { protected $allowedIncludePaths = [ - \JsonApi\Schemas\Forum\ForumSubscription::REL_RANGE, - \JsonApi\Schemas\Forum\ForumSubscription::REL_SUBJECT, - \JsonApi\Schemas\Forum\ForumSubscription::REL_USER, + \JsonApi\Schemas\Forum\Subscription::REL_RANGE, + \JsonApi\Schemas\Forum\Subscription::REL_SUBJECT, + \JsonApi\Schemas\Forum\Subscription::REL_USER, ]; public function __invoke(Request $request, Response $response, $args) { $user = $this->getUser($request); - $subscription = ForumSubscription::findOneBySQL( + $subscription = Subscription::findOneBySQL( "id = :id AND user_id = :user_id", [ 'id' => $args['subscription_id'], diff --git a/lib/classes/JsonApi/Routes/Forum/ForumSubscriptionStore.php b/lib/classes/JsonApi/Routes/Forum/SubscriptionStore.php index ea3f308..f7ba658 100644 --- a/lib/classes/JsonApi/Routes/Forum/ForumSubscriptionStore.php +++ b/lib/classes/JsonApi/Routes/Forum/SubscriptionStore.php @@ -7,10 +7,10 @@ use Psr\Http\Message\ResponseInterface as Response; use JsonApi\Errors\AuthorizationFailedException; use JsonApi\JsonApiController; use JsonApi\Routes\ValidationTrait; -use Forum\ForumDiscussion; -use Forum\ForumSubscription; +use Forum\Discussion; +use Forum\Subscription; -class ForumSubscriptionStore extends JsonApiController +class SubscriptionStore extends JsonApiController { use ValidationTrait; @@ -21,7 +21,7 @@ class ForumSubscriptionStore extends JsonApiController $subjectType = $this->mapSubjectType(self::arrayGet($json, 'data.relationships.subject.data.type')); if ($subjectType === 'discussion') { - $discussion = ForumDiscussion::find(self::arrayGet($json, 'data.relationships.subject.data.id')); + $discussion = Discussion::find(self::arrayGet($json, 'data.relationships.subject.data.id')); if (!$discussion || $discussion->closed_at) { throw new AuthorizationFailedException(); @@ -29,10 +29,10 @@ class ForumSubscriptionStore extends JsonApiController } if (!self::arrayHas($json, 'data.id')) { - $subscription = new ForumSubscription(); + $subscription = new Subscription(); $subscription->user_id = $user->user_id; } else { - $subscription = ForumSubscription::findOneBySQL( + $subscription = Subscription::findOneBySQL( "id = :id AND user_id = :user_id", [ 'id' => self::arrayGet($json, 'data.id'), diff --git a/lib/classes/JsonApi/Routes/Forum/ForumTopicDiscussions.php b/lib/classes/JsonApi/Routes/Forum/TopicDiscussions.php index c482c0a..03fa55f 100644 --- a/lib/classes/JsonApi/Routes/Forum/ForumTopicDiscussions.php +++ b/lib/classes/JsonApi/Routes/Forum/TopicDiscussions.php @@ -1,29 +1,28 @@ <?php namespace JsonApi\Routes\Forum; -use Forum\ForumTopic; +use Forum\Topic; use JsonApi\Errors\RecordNotFoundException; -use JsonApi\Routes\RangeAuthority; use Psr\Http\Message\ServerRequestInterface as Request; use Psr\Http\Message\ResponseInterface as Response; use JsonApi\Errors\AuthorizationFailedException; use JsonApi\JsonApiController; -class ForumTopicDiscussions extends JsonApiController +class TopicDiscussions extends JsonApiController { protected $allowedPagingParameters = ['offset', 'limit']; protected $allowedIncludePaths = [ - \JsonApi\Schemas\Forum\ForumCategory::REL_TOPICS, - \JsonApi\Schemas\Forum\ForumDiscussion::REL_CATEGORY, - \JsonApi\Schemas\Forum\ForumDiscussion::REL_USER, - \JsonApi\Schemas\Forum\ForumDiscussion::REL_DISCUSSION_TYPE, - \JsonApi\Schemas\Forum\ForumDiscussion::REL_MEMBERS, - \JsonApi\Schemas\Forum\ForumDiscussion::REL_TAGS + \JsonApi\Schemas\Forum\Category::REL_TOPICS, + \JsonApi\Schemas\Forum\Discussion::REL_CATEGORY, + \JsonApi\Schemas\Forum\Discussion::REL_USER, + \JsonApi\Schemas\Forum\Discussion::REL_DISCUSSION_TYPE, + \JsonApi\Schemas\Forum\Discussion::REL_MEMBERS, + \JsonApi\Schemas\Forum\Discussion::REL_TAGS ]; public function __invoke(Request $request, Response $response, $args) { - $topic = ForumTopic::find($args['topic_id']); + $topic = Topic::find($args['topic_id']); if (!$topic) { throw new RecordNotFoundException(); } @@ -34,7 +33,7 @@ class ForumTopicDiscussions extends JsonApiController } $user = $this->getUser($request); - if (!RangeAuthority::canShowRange($user, $range)) { + if (!Authority::canShowForum($user, $range)) { throw new AuthorizationFailedException(); } diff --git a/lib/classes/JsonApi/Routes/Forum/ForumTopicIndex.php b/lib/classes/JsonApi/Routes/Forum/TopicIndex.php index 038d0c9..b46ee72 100644 --- a/lib/classes/JsonApi/Routes/Forum/ForumTopicIndex.php +++ b/lib/classes/JsonApi/Routes/Forum/TopicIndex.php @@ -3,18 +3,17 @@ namespace JsonApi\Routes\Forum; use JsonApi\Errors\AuthorizationFailedException; use JsonApi\Errors\RecordNotFoundException; -use JsonApi\Routes\RangeAuthority; use Psr\Http\Message\ServerRequestInterface as Request; use Psr\Http\Message\ResponseInterface as Response; use JsonApi\JsonApiController; -use Forum\ForumTopic; +use Forum\Topic; -class ForumTopicIndex extends JsonApiController +class TopicIndex extends JsonApiController { protected $allowedPagingParameters = ['offset', 'limit']; protected $allowedFilteringParameters = ['course-id']; protected $allowedIncludePaths = [ - \JsonApi\Schemas\Forum\ForumTopic::REL_CATEGORY + \JsonApi\Schemas\Forum\Topic::REL_CATEGORY ]; public function __invoke(Request $request, Response $response, $args) @@ -25,11 +24,11 @@ class ForumTopicIndex extends JsonApiController } $user = $this->getUser($request); - if (!RangeAuthority::canShowRange($user, $range)) { + if (!Authority::canShowForum($user, $range)) { throw new AuthorizationFailedException(); } - $topics = ForumTopic::getCourseTopics($range->id); + $topics = Topic::getCourseTopics($range->id); return $this->getPaginatedContentResponse( array_slice($topics, ...$this->getOffsetAndLimit()), diff --git a/lib/classes/JsonApi/Routes/Forum/ForumTopicShow.php b/lib/classes/JsonApi/Routes/Forum/TopicShow.php index 32704b7..1598ffc 100644 --- a/lib/classes/JsonApi/Routes/Forum/ForumTopicShow.php +++ b/lib/classes/JsonApi/Routes/Forum/TopicShow.php @@ -1,21 +1,20 @@ <?php namespace JsonApi\Routes\Forum; -use JsonApi\Routes\RangeAuthority; use Psr\Http\Message\ServerRequestInterface as Request; use Psr\Http\Message\ResponseInterface as Response; use JsonApi\Errors\AuthorizationFailedException; use JsonApi\Errors\RecordNotFoundException; use JsonApi\JsonApiController; -use Forum\ForumTopic; +use Forum\Topic; -class ForumTopicShow extends JsonApiController +class TopicShow extends JsonApiController { protected $allowedPagingParameters = ['offset', 'limit']; public function __invoke(Request $request, Response $response, $args) { - $topic = ForumTopic::find($args['topic_id']); + $topic = Topic::find($args['topic_id']); if (!$topic) { throw new RecordNotFoundException(); } @@ -26,7 +25,7 @@ class ForumTopicShow extends JsonApiController } $user = $this->getUser($request); - if (!RangeAuthority::canShowRange($user, $range)) { + if (!Authority::canShowForum($user, $range)) { throw new AuthorizationFailedException(); } diff --git a/lib/classes/JsonApi/Routes/Forum/ForumTopicUpdateSort.php b/lib/classes/JsonApi/Routes/Forum/TopicUpdateSort.php index 3e77b40..919d2a9 100644 --- a/lib/classes/JsonApi/Routes/Forum/ForumTopicUpdateSort.php +++ b/lib/classes/JsonApi/Routes/Forum/TopicUpdateSort.php @@ -8,9 +8,9 @@ use Psr\Http\Message\ResponseInterface as Response; use JsonApi\Errors\AuthorizationFailedException; use JsonApi\JsonApiController; use JsonApi\Routes\ValidationTrait; -use Forum\ForumTopic; +use Forum\Topic; -class ForumTopicUpdateSort extends JsonApiController +class TopicUpdateSort extends JsonApiController { use ValidationTrait; @@ -30,8 +30,8 @@ class ForumTopicUpdateSort extends JsonApiController $topic_ids = self::arrayGet($json, 'data.attributes.topic-ids'); - ForumTopic::findEachBySQL( - function (ForumTopic $topic) use ($topic_ids) { + Topic::findEachBySQL( + function (Topic $topic) use ($topic_ids) { $topic->position = (int) array_search($topic->topic_id, $topic_ids); $topic->store(); }, diff --git a/lib/classes/JsonApi/Routes/Institutes/Authority.php b/lib/classes/JsonApi/Routes/Institutes/Authority.php index 2bd68a5..c6ee43b 100644 --- a/lib/classes/JsonApi/Routes/Institutes/Authority.php +++ b/lib/classes/JsonApi/Routes/Institutes/Authority.php @@ -7,11 +7,6 @@ use User; class Authority { - public static function canShowInstitute(User $user, Institute $institute): bool - { - return $institute->isAccessibleToUser($user->id); - } - /** * @SuppressWarnings(PHPMD.Superglobals) */ diff --git a/lib/classes/JsonApi/Routes/RangeAuthority.php b/lib/classes/JsonApi/Routes/RangeAuthority.php deleted file mode 100644 index 447ae60..0000000 --- a/lib/classes/JsonApi/Routes/RangeAuthority.php +++ /dev/null @@ -1,41 +0,0 @@ -<?php - -namespace JsonApi\Routes; - -use Course; -use Institute; -use Range; -use User; -use JsonApi\Routes\Courses\Authority as CourseAuthority; -use JsonApi\Routes\Institutes\Authority as InstituteAuthority; - -class RangeAuthority -{ - const SCOPE_BASIC = 'basic'; - - public static function canShowRange(User $user, Range $range, $scope = self::SCOPE_BASIC): bool - { - if ($range instanceof Course) { - return CourseAuthority::canShowCourse($user, $range, $scope); - } - - if ($range instanceof Institute) { - return InstituteAuthority::canShowInstitute($user, $range); - } - - return false; - } - - public static function canEditRange(User $user, Range $range): bool - { - if ($range instanceof Course) { - return CourseAuthority::canEditCourse($user, $range); - } - - if ($range instanceof Institute) { - return InstituteAuthority::canEditInstitute($user, $range); - } - - return false; - } -} diff --git a/lib/classes/JsonApi/SchemaMap.php b/lib/classes/JsonApi/SchemaMap.php index e460150..d45c6a7 100644 --- a/lib/classes/JsonApi/SchemaMap.php +++ b/lib/classes/JsonApi/SchemaMap.php @@ -39,15 +39,15 @@ class SchemaMap \Degree::class => Schemas\Degree::class, \FeedbackElement::class => Schemas\FeedbackElement::class, \FeedbackEntry::class => Schemas\FeedbackEntry::class, - \Forum\ForumCategory::class => \JsonApi\Schemas\Forum\ForumCategory::class, - \Forum\ForumTopic::class => \JsonApi\Schemas\Forum\ForumTopic::class, - \Forum\ForumDiscussion::class => \JsonApi\Schemas\Forum\ForumDiscussion::class, - \Forum\ForumDiscussionType::class => \JsonApi\Schemas\Forum\ForumDiscussionType::class, - \Forum\ForumPosting::class => \JsonApi\Schemas\Forum\ForumPosting::class, - \Forum\ForumPostingReaction::class => \JsonApi\Schemas\Forum\ForumPostingReaction::class, - \Forum\ForumSubscription::class => \JsonApi\Schemas\Forum\ForumSubscription::class, - \Forum\DTO\ForumMember::class => \JsonApi\Schemas\Forum\ForumMember::class, - \Forum\DTO\ForumTag::class => \JsonApi\Schemas\Forum\ForumTag::class, + \Forum\Category::class => \JsonApi\Schemas\Forum\Category::class, + \Forum\Topic::class => \JsonApi\Schemas\Forum\Topic::class, + \Forum\Discussion::class => \JsonApi\Schemas\Forum\Discussion::class, + \Forum\DiscussionType::class => \JsonApi\Schemas\Forum\DiscussionType::class, + \Forum\Posting::class => \JsonApi\Schemas\Forum\Posting::class, + \Forum\PostingReaction::class => \JsonApi\Schemas\Forum\PostingReaction::class, + \Forum\Subscription::class => \JsonApi\Schemas\Forum\Subscription::class, + \Forum\DTO\Member::class => \JsonApi\Schemas\Forum\Member::class, + \Forum\DTO\Tag::class => \JsonApi\Schemas\Forum\Tag::class, \Institute::class => Schemas\Institute::class, \InstituteMember::class => Schemas\InstituteMember::class, \LtiTool::class => Schemas\LtiTool::class, diff --git a/lib/classes/JsonApi/Schemas/Activity.php b/lib/classes/JsonApi/Schemas/Activity.php index 3839793..6607a4d 100644 --- a/lib/classes/JsonApi/Schemas/Activity.php +++ b/lib/classes/JsonApi/Schemas/Activity.php @@ -89,7 +89,7 @@ class Activity extends SchemaProvider { $mapping = [ 'documents' => \FileRef::class, - 'forum' => \Forum\ForumPosting::class, + 'forum' => \Forum\Posting::class, 'message' => \Message::class, 'news' => \StudipNews::class, 'participants' => \Course::class, diff --git a/lib/classes/JsonApi/Schemas/Forum/ForumCategory.php b/lib/classes/JsonApi/Schemas/Forum/Category.php index b75e82b..de5aa3e 100644 --- a/lib/classes/JsonApi/Schemas/Forum/ForumCategory.php +++ b/lib/classes/JsonApi/Schemas/Forum/Category.php @@ -5,7 +5,7 @@ use JsonApi\Schemas\SchemaProvider; use Neomerx\JsonApi\Contracts\Schema\ContextInterface; use Neomerx\JsonApi\Schema\Link; -class ForumCategory extends SchemaProvider +class Category extends SchemaProvider { const TYPE = 'forum-categories'; const REL_TOPICS = 'topics'; diff --git a/lib/classes/JsonApi/Schemas/Forum/ForumDiscussion.php b/lib/classes/JsonApi/Schemas/Forum/Discussion.php index 6c5309e..abac14e 100644 --- a/lib/classes/JsonApi/Schemas/Forum/ForumDiscussion.php +++ b/lib/classes/JsonApi/Schemas/Forum/Discussion.php @@ -6,7 +6,7 @@ use JsonApi\Schemas\SchemaProvider; use Neomerx\JsonApi\Contracts\Schema\ContextInterface; use Neomerx\JsonApi\Schema\Link; -class ForumDiscussion extends SchemaProvider +class Discussion extends SchemaProvider { const TYPE = 'forum-discussions'; const REL_POSTINGS = 'postings'; diff --git a/lib/classes/JsonApi/Schemas/Forum/ForumDiscussionType.php b/lib/classes/JsonApi/Schemas/Forum/DiscussionType.php index 7bdf6bb..07ea34d 100644 --- a/lib/classes/JsonApi/Schemas/Forum/ForumDiscussionType.php +++ b/lib/classes/JsonApi/Schemas/Forum/DiscussionType.php @@ -5,7 +5,7 @@ use JsonApi\Schemas\SchemaProvider; use Neomerx\JsonApi\Contracts\Schema\ContextInterface; use Neomerx\JsonApi\Schema\Link; -class ForumDiscussionType extends SchemaProvider +class DiscussionType extends SchemaProvider { const TYPE = 'forum-discussion-types'; diff --git a/lib/classes/JsonApi/Schemas/Forum/ForumMember.php b/lib/classes/JsonApi/Schemas/Forum/Member.php index 71a0226..6798c4e 100644 --- a/lib/classes/JsonApi/Schemas/Forum/ForumMember.php +++ b/lib/classes/JsonApi/Schemas/Forum/Member.php @@ -4,7 +4,7 @@ namespace JsonApi\Schemas\Forum; use JsonApi\Schemas\SchemaProvider; use Neomerx\JsonApi\Contracts\Schema\ContextInterface; -class ForumMember extends SchemaProvider +class Member extends SchemaProvider { const TYPE = 'forum-members'; diff --git a/lib/classes/JsonApi/Schemas/Forum/ForumPosting.php b/lib/classes/JsonApi/Schemas/Forum/Posting.php index a03e75d..426c876 100644 --- a/lib/classes/JsonApi/Schemas/Forum/ForumPosting.php +++ b/lib/classes/JsonApi/Schemas/Forum/Posting.php @@ -6,7 +6,7 @@ use JsonApi\Schemas\SchemaProvider; use Neomerx\JsonApi\Contracts\Schema\ContextInterface; use Neomerx\JsonApi\Schema\Link; -class ForumPosting extends SchemaProvider +class Posting extends SchemaProvider { const TYPE = 'forum-postings'; const REL_AUTHOR = 'author'; diff --git a/lib/classes/JsonApi/Schemas/Forum/ForumPostingReaction.php b/lib/classes/JsonApi/Schemas/Forum/PostingReaction.php index 1b7bfa9..9441b63 100644 --- a/lib/classes/JsonApi/Schemas/Forum/ForumPostingReaction.php +++ b/lib/classes/JsonApi/Schemas/Forum/PostingReaction.php @@ -6,7 +6,7 @@ use JsonApi\Schemas\SchemaProvider; use Neomerx\JsonApi\Contracts\Schema\ContextInterface; use Neomerx\JsonApi\Schema\Link; -class ForumPostingReaction extends SchemaProvider +class PostingReaction extends SchemaProvider { const TYPE = 'forum-posting-reactions'; const REL_POSTING = 'posting'; diff --git a/lib/classes/JsonApi/Schemas/Forum/ForumSubscription.php b/lib/classes/JsonApi/Schemas/Forum/Subscription.php index 6cc82e0..4e5484e 100644 --- a/lib/classes/JsonApi/Schemas/Forum/ForumSubscription.php +++ b/lib/classes/JsonApi/Schemas/Forum/Subscription.php @@ -6,7 +6,7 @@ use JsonApi\Schemas\SchemaProvider; use Neomerx\JsonApi\Contracts\Schema\ContextInterface; use Neomerx\JsonApi\Schema\Link; -class ForumSubscription extends SchemaProvider +class Subscription extends SchemaProvider { const TYPE = 'forum-subscriptions'; const REL_USER = 'user'; diff --git a/lib/classes/JsonApi/Schemas/Forum/ForumTag.php b/lib/classes/JsonApi/Schemas/Forum/Tag.php index 00bf2e9..1c2e72e 100644 --- a/lib/classes/JsonApi/Schemas/Forum/ForumTag.php +++ b/lib/classes/JsonApi/Schemas/Forum/Tag.php @@ -4,7 +4,7 @@ namespace JsonApi\Schemas\Forum; use JsonApi\Schemas\SchemaProvider; use Neomerx\JsonApi\Contracts\Schema\ContextInterface; -class ForumTag extends SchemaProvider +class Tag extends SchemaProvider { const TYPE = 'forum-tags'; diff --git a/lib/classes/JsonApi/Schemas/Forum/ForumTopic.php b/lib/classes/JsonApi/Schemas/Forum/Topic.php index 88461a1..624c6e7 100644 --- a/lib/classes/JsonApi/Schemas/Forum/ForumTopic.php +++ b/lib/classes/JsonApi/Schemas/Forum/Topic.php @@ -7,7 +7,7 @@ use JsonApi\Schemas\Studip; use Neomerx\JsonApi\Contracts\Schema\ContextInterface; use Neomerx\JsonApi\Schema\Link; -class ForumTopic extends SchemaProvider +class Topic extends SchemaProvider { const TYPE = 'forum-topics'; const REL_CATEGORY = 'category'; @@ -21,7 +21,7 @@ class ForumTopic extends SchemaProvider /** * @inheritdoc * - * @param \Forum\ForumTopic $topic + * @param \Forum\Topic $topic */ public function getAttributes($topic, ContextInterface $context): iterable { @@ -37,7 +37,7 @@ class ForumTopic extends SchemaProvider /** * @inheritdoc * - * @param \Forum\ForumTopic $topic + * @param \Forum\Topic $topic */ public function hasResourceMeta($topic): bool { @@ -47,7 +47,7 @@ class ForumTopic extends SchemaProvider /** * @inheritdoc * - * @param \Forum\ForumTopic $topic + * @param \Forum\Topic $topic */ public function getResourceMeta($topic) { @@ -65,7 +65,7 @@ class ForumTopic extends SchemaProvider /** * @SuppressWarnings(PHPMD.UnusedFormalParameter) * - * @param \Forum\ForumTopic $topic + * @param \Forum\Topic $topic */ public function getRelationships($topic, ContextInterface $context): iterable { diff --git a/lib/classes/Privacy.php b/lib/classes/Privacy.php index d28ecf4..a0c1690 100644 --- a/lib/classes/Privacy.php +++ b/lib/classes/Privacy.php @@ -42,7 +42,7 @@ class Privacy ], 'content' => [ FileRef::class, - \Forum\ForumPosting::class, + \Forum\Posting::class, WikiPage::class, Courseware\Unit::class, Courseware\StructuralElement::class, diff --git a/lib/classes/Siteinfo.php b/lib/classes/Siteinfo.php index 8ca1c08..a11e8cb 100644 --- a/lib/classes/Siteinfo.php +++ b/lib/classes/Siteinfo.php @@ -557,7 +557,7 @@ class SiteinfoMarkupEngine { if ($key === 'posting') { $template->title = _('Forenbeiträge'); $template->detail = _('Anzahl Beiträge aller verwendeten Foren'); - $template->count = \Forum\ForumPosting::countBySql(); + $template->count = \Forum\Posting::countBySql(); } else { // iterate over the other indicators if (in_array($key,array_keys($indicator))) { |
