UserHelper::getPostCount()   A
last analyzed

Complexity

Conditions 3
Paths 9

Size

Total Lines 21
Code Lines 12

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
c 1
b 0
f 0
dl 0
loc 21
rs 9.3142
cc 3
eloc 12
nc 9
nop 1
1
<?php namespace Taskforcedev\LaravelForum\Helpers;
2
3
use \Exception;
4
use Taskforcedev\LaravelForum\Models\ForumPost;
5
use Taskforcedev\LaravelForum\Models\ForumReply;
6
use Taskforcedev\LaravelSupport\Helpers\User as SupportUserHelper;
7
8
/**
9
 * Class UserHelper
10
 * @package Taskforcedev\LaravelForum\Helpers
11
 */
12
class UserHelper extends SupportUserHelper
13
{
14
    /**
15
     * Get a users post count (posts created and replies).
16
     * @param int $user_id User Id.
17
     * @return int
18
     */
19
    public function getPostCount($user_id)
20
    {
21
        /* Get count from forum posts */
22
        try {
23
            $posts = ForumPost::where('author_id', $user_id)->get();
24
            $posts = count($posts);
25
        } catch (Exception $e) {
26
            $posts = 0;
27
        }
28
29
        /* Get count from forum replies */
30
        try {
31
            $replies = ForumReply::where('author_id', $user_id)->get();
32
            $replies = count($replies);
33
        } catch (Exception $e) {
34
            $replies = 0;
35
        }
36
37
        /* Return total */
38
        return $posts + $replies;
39
    }
40
}
41