Completed
Push — master ( c30100...d2035e )
by ARCANEDEV
16:12 queued 05:42
created

VisitorActivityTracker::track()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 7
Code Lines 4

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 4
CRAP Score 1

Importance

Changes 0
Metric Value
dl 0
loc 7
rs 9.4285
c 0
b 0
f 0
ccs 4
cts 4
cp 1
cc 1
eloc 4
nc 1
nop 1
crap 1
1
<?php namespace Arcanedev\LaravelTracker\Trackers;
2
3
use Arcanedev\LaravelTracker\Contracts\Trackers\VisitorActivityTracker as VisitorActivityTrackerContract;
4
use Arcanedev\LaravelTracker\Support\BindingManager;
5
6
/**
7
 * Class     VisitorActivityTracker
8
 *
9
 * @package  Arcanedev\LaravelTracker\Trackers
10
 * @author   ARCANEDEV <[email protected]>
11
 */
12
class VisitorActivityTracker extends AbstractTracker implements VisitorActivityTrackerContract
13
{
14
    /* ------------------------------------------------------------------------------------------------
15
     |  Getters and Setters
16
     | ------------------------------------------------------------------------------------------------
17
     */
18
    /**
19
     * Get the model.
20
     *
21
     * @return \Arcanedev\LaravelTracker\Models\VisitorActivity
22
     */
23 18
    protected function getModel()
24
    {
25 18
        return $this->makeModel(BindingManager::MODEL_VISITOR_ACTIVITY);
26
    }
27
28
    /* ------------------------------------------------------------------------------------------------
29
     |  Main Functions
30
     | ------------------------------------------------------------------------------------------------
31
     */
32
    /**
33
     * Track the visitor activity.
34
     *
35
     * @param  array  $data
36
     *
37
     * @return int
38
     */
39 18
    public function track(array $data)
40
    {
41 18
        $model = $this->getModel()->fill($data);
42 18
        $model->save();
43
44 18
        return $model->id;
45
    }
46
}
47