Passed
Branch master (5b6d04)
by Michael
03:42
created

Ratings::getValuesRatings()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 12
Code Lines 9

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
cc 1
eloc 9
c 1
b 0
f 0
nc 1
nop 3
dl 0
loc 12
rs 9.9666
1
<?php
2
3
namespace XoopsModules\Publisher;
4
5
/*
6
 You may not change or alter any portion of this comment or credits
7
 of supporting developers from this source code or any supporting source code
8
 which is considered copyrighted (c) material of the original comment or credit authors.
9
10
 This program is distributed in the hope that it will be useful,
11
 but WITHOUT ANY WARRANTY; without even the implied warranty of
12
 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13
*/
14
15
16
use XoopsUser;
17
18
/**
19
 * Publisher module for xoops
20
 *
21
 * @copyright      module for xoops
22
 * @license        GPL 3.0 or later
23
 * @package        Publisher
24
 * @since          1.0
25
 * @min_xoops      2.5.10
26
 * @author         XOOPS Development Team
27
 */
28
\defined('XOOPS_ROOT_PATH') || exit('Restricted access');
29
30
/**
31
 * Class Object Ratings
32
 */
33
class Ratings extends \XoopsObject
34
{
35
    /**
36
     * Constructor
37
     *
38
     * @param null
39
     */
40
    public function __construct()
41
    {
42
        $this->initVar('rate_id', \XOBJ_DTYPE_INT);
43
        $this->initVar('rate_source', \XOBJ_DTYPE_INT);
44
        $this->initVar('rate_itemid', \XOBJ_DTYPE_INT);
45
        $this->initVar('rate_value', \XOBJ_DTYPE_INT);
46
        $this->initVar('rate_uid', \XOBJ_DTYPE_INT);
47
        $this->initVar('rate_ip', \XOBJ_DTYPE_TXTBOX);
48
        $this->initVar('rate_date', \XOBJ_DTYPE_INT);
49
    }
50
51
    /**
52
     * @static function &getInstance
53
     *
54
     * @param null
55
     */
56
    public static function getInstance()
57
    {
58
        static $instance = false;
59
        if (!$instance) {
60
            $instance = new self();
61
        }
62
    }
63
64
    /**
65
     * The new inserted $Id
66
     * @return int inserted id
67
     */
68
    public function getNewInsertedIdRatings()
69
    {
70
        $newInsertedId = $GLOBALS['xoopsDB']->getInsertId();
71
72
        return $newInsertedId;
73
    }
74
75
    /**
76
     * Get Values
77
     * @param array|null  $keys
78
     * @param string|null $format
79
     * @param int|null    $maxDepth
80
     * @return array
81
     */
82
    public function getValuesRatings($keys = null, $format = null, $maxDepth = null)
83
    {
84
        $ret           = $this->getValues($keys, $format, $maxDepth);
85
        $ret['id']     = $this->getVar('rate_id');
86
        $ret['source'] = $this->getVar('rate_source');
87
        $ret['itemid'] = $this->getVar('rate_itemid');
88
        $ret['value']  = $this->getVar('rate_value');
89
        $ret['uid']    = XoopsUser::getUnameFromId($this->getVar('rate_uid'));
90
        $ret['ip']     = $this->getVar('rate_ip');
91
        $ret['date']   = \formatTimestamp($this->getVar('rate_date'), 's');
92
93
        return $ret;
94
    }
95
96
    /**
97
     * Returns an array representation of the object
98
     *
99
     * @return array
100
     */
101
    public function toArrayRatings()
102
    {
103
        $ret  = [];
104
        $vars = $this->getVars();
105
        foreach (\array_keys($vars) as $var) {
106
            $ret[$var] = $this->getVar('"{$var}"');
107
        }
108
109
        return $ret;
110
    }
111
}
112