Passed
Push — master ( 84c1d9...4b5f27 )
by Michael
15:53 queued 12:17
created
class/Utf8mapHandler.php 2 patches
Indentation   +85 added lines, -85 removed lines patch added patch discarded remove patch
@@ -17,98 +17,98 @@
 block discarded – undo
17 17
  */
18 18
 class Utf8mapHandler extends XoopsPersistableObjectHandler
19 19
 {
20
-    /**
21
-     * Utf8mapHandler constructor.
22
-     * @param \XoopsDatabase $db
23
-     */
24
-    public function __construct(XoopsDatabase $db)
25
-    {
26
-        parent::__construct($db, 'songlist_utf8map', Utf8map::class, 'utfid', 'from');
27
-    }
20
+	/**
21
+	 * Utf8mapHandler constructor.
22
+	 * @param \XoopsDatabase $db
23
+	 */
24
+	public function __construct(XoopsDatabase $db)
25
+	{
26
+		parent::__construct($db, 'songlist_utf8map', Utf8map::class, 'utfid', 'from');
27
+	}
28 28
 
29
-    /**
30
-     * @return array
31
-     */
32
-    public function filterFields(): array
33
-    {
34
-        return ['utfid', 'from', 'to', 'created', 'updated'];
35
-    }
29
+	/**
30
+	 * @return array
31
+	 */
32
+	public function filterFields(): array
33
+	{
34
+		return ['utfid', 'from', 'to', 'created', 'updated'];
35
+	}
36 36
 
37
-    /**
38
-     * @param $filter
39
-     * @return \CriteriaCompo
40
-     */
41
-    public function getFilterCriteria($filter): CriteriaCompo
42
-    {
43
-        $parts    = \explode('|', $filter);
44
-        $criteria = new CriteriaCompo();
45
-        foreach ($parts as $part) {
46
-            $var = \explode(',', $part);
47
-            if (!empty($var[1]) && !\is_numeric($var[0])) {
48
-                $object = $this->create();
49
-                if (\XOBJ_DTYPE_TXTBOX == $object->vars[$var[0]]['data_type']
50
-                    || \XOBJ_DTYPE_TXTAREA == $object->vars[$var[0]]['data_type']) {
51
-                    $criteria->add(new Criteria('`' . $var[0] . '`', '%' . $var[1] . '%', ($var[2] ?? 'LIKE')));
52
-                } elseif (in_array($object->vars[$var[0]]['data_type'], [XOBJ_DTYPE_INT, XOBJ_DTYPE_DECIMAL, XOBJ_DTYPE_FLOAT])) {
53
-                    $criteria->add(new Criteria('`' . $var[0] . '`', $var[1], ($var[2] ?? '=')));
54
-                } elseif (\XOBJ_DTYPE_ENUM == $object->vars[$var[0]]['data_type']) {
55
-                    $criteria->add(new Criteria('`' . $var[0] . '`', $var[1], ($var[2] ?? '=')));
56
-                } elseif (\XOBJ_DTYPE_ARRAY == $object->vars[$var[0]]['data_type']) {
57
-                    $criteria->add(new Criteria('`' . $var[0] . '`', '%"' . $var[1] . '";%', ($var[2] ?? 'LIKE')));
58
-                }
59
-            } elseif (!empty($var[1]) && \is_numeric($var[0])) {
60
-                $criteria->add(new Criteria($var[0], $var[1]));
61
-            }
62
-        }
37
+	/**
38
+	 * @param $filter
39
+	 * @return \CriteriaCompo
40
+	 */
41
+	public function getFilterCriteria($filter): CriteriaCompo
42
+	{
43
+		$parts    = \explode('|', $filter);
44
+		$criteria = new CriteriaCompo();
45
+		foreach ($parts as $part) {
46
+			$var = \explode(',', $part);
47
+			if (!empty($var[1]) && !\is_numeric($var[0])) {
48
+				$object = $this->create();
49
+				if (\XOBJ_DTYPE_TXTBOX == $object->vars[$var[0]]['data_type']
50
+					|| \XOBJ_DTYPE_TXTAREA == $object->vars[$var[0]]['data_type']) {
51
+					$criteria->add(new Criteria('`' . $var[0] . '`', '%' . $var[1] . '%', ($var[2] ?? 'LIKE')));
52
+				} elseif (in_array($object->vars[$var[0]]['data_type'], [XOBJ_DTYPE_INT, XOBJ_DTYPE_DECIMAL, XOBJ_DTYPE_FLOAT])) {
53
+					$criteria->add(new Criteria('`' . $var[0] . '`', $var[1], ($var[2] ?? '=')));
54
+				} elseif (\XOBJ_DTYPE_ENUM == $object->vars[$var[0]]['data_type']) {
55
+					$criteria->add(new Criteria('`' . $var[0] . '`', $var[1], ($var[2] ?? '=')));
56
+				} elseif (\XOBJ_DTYPE_ARRAY == $object->vars[$var[0]]['data_type']) {
57
+					$criteria->add(new Criteria('`' . $var[0] . '`', '%"' . $var[1] . '";%', ($var[2] ?? 'LIKE')));
58
+				}
59
+			} elseif (!empty($var[1]) && \is_numeric($var[0])) {
60
+				$criteria->add(new Criteria($var[0], $var[1]));
61
+			}
62
+		}
63 63
 
64
-        return $criteria;
65
-    }
64
+		return $criteria;
65
+	}
66 66
 
67
-    /**
68
-     * @param        $filter
69
-     * @param        $field
70
-     * @param string $sort
71
-     * @param string $op
72
-     * @param string $fct
73
-     * @return string
74
-     */
75
-    public function getFilterForm($filter, $field, $sort = 'created', $op = 'dashboard', $fct = 'list'): string
76
-    {
77
-        $ele = Utility::getFilterElement($filter, $field, $sort, $op, $fct);
78
-        if (\is_object($ele)) {
79
-            return $ele->render();
80
-        }
67
+	/**
68
+	 * @param        $filter
69
+	 * @param        $field
70
+	 * @param string $sort
71
+	 * @param string $op
72
+	 * @param string $fct
73
+	 * @return string
74
+	 */
75
+	public function getFilterForm($filter, $field, $sort = 'created', $op = 'dashboard', $fct = 'list'): string
76
+	{
77
+		$ele = Utility::getFilterElement($filter, $field, $sort, $op, $fct);
78
+		if (\is_object($ele)) {
79
+			return $ele->render();
80
+		}
81 81
 
82
-        return ' ';
83
-    }
82
+		return ' ';
83
+	}
84 84
 
85
-    /**
86
-     * @param bool $force
87
-     * @return mixed
88
-     */
89
-    public function insert(XoopsObject $obj, $force = true)
90
-    {
91
-        if ($obj->isNew()) {
92
-            $obj->setVar('created', \time());
93
-        } else {
94
-            $obj->setVar('updated', \time());
95
-        }
85
+	/**
86
+	 * @param bool $force
87
+	 * @return mixed
88
+	 */
89
+	public function insert(XoopsObject $obj, $force = true)
90
+	{
91
+		if ($obj->isNew()) {
92
+			$obj->setVar('created', \time());
93
+		} else {
94
+			$obj->setVar('updated', \time());
95
+		}
96 96
 
97
-        return parent::insert($obj, $force);
98
-    }
97
+		return parent::insert($obj, $force);
98
+	}
99 99
 
100
-    /**
101
-     * @param string $phrase
102
-     * @param null   $criteria
103
-     * @return string|string[]
104
-     */
105
-    public function convert($phrase = '', $criteria = null)
106
-    {
107
-        foreach ($this->getObjects($criteria, true) as $utfid => $utf8) {
108
-            $phrase = \str_replace(mb_strtolower($utf8->getVar('from')), \mb_strtolower($utf8->getVar('to')), $phrase);
109
-            $phrase = \str_replace(mb_strtoupper($utf8->getVar('from')), \mb_strtoupper($utf8->getVar('to')), $phrase);
110
-        }
100
+	/**
101
+	 * @param string $phrase
102
+	 * @param null   $criteria
103
+	 * @return string|string[]
104
+	 */
105
+	public function convert($phrase = '', $criteria = null)
106
+	{
107
+		foreach ($this->getObjects($criteria, true) as $utfid => $utf8) {
108
+			$phrase = \str_replace(mb_strtolower($utf8->getVar('from')), \mb_strtolower($utf8->getVar('to')), $phrase);
109
+			$phrase = \str_replace(mb_strtoupper($utf8->getVar('from')), \mb_strtoupper($utf8->getVar('to')), $phrase);
110
+		}
111 111
 
112
-        return $phrase;
113
-    }
112
+		return $phrase;
113
+	}
114 114
 }
Please login to merge, or discard this patch.
Spacing   +9 added lines, -9 removed lines patch added patch discarded remove patch
@@ -8,7 +8,7 @@  discard block
 block discarded – undo
8 8
 use XoopsObject;
9 9
 use XoopsPersistableObjectHandler;
10 10
 
11
-require_once \dirname(__DIR__) . '/include/songlist.object.php';
11
+require_once \dirname(__DIR__).'/include/songlist.object.php';
12 12
 // require_once \dirname(__DIR__) . '/include/songlist.form.php';
13 13
 use  XoopsModules\Songlist\Form\FormController;
14 14
 
@@ -46,15 +46,15 @@  discard block
 block discarded – undo
46 46
             $var = \explode(',', $part);
47 47
             if (!empty($var[1]) && !\is_numeric($var[0])) {
48 48
                 $object = $this->create();
49
-                if (\XOBJ_DTYPE_TXTBOX == $object->vars[$var[0]]['data_type']
50
-                    || \XOBJ_DTYPE_TXTAREA == $object->vars[$var[0]]['data_type']) {
51
-                    $criteria->add(new Criteria('`' . $var[0] . '`', '%' . $var[1] . '%', ($var[2] ?? 'LIKE')));
49
+                if (\XOBJ_DTYPE_TXTBOX==$object->vars[$var[0]]['data_type']
50
+                    || \XOBJ_DTYPE_TXTAREA==$object->vars[$var[0]]['data_type']) {
51
+                    $criteria->add(new Criteria('`'.$var[0].'`', '%'.$var[1].'%', ($var[2] ?? 'LIKE')));
52 52
                 } elseif (in_array($object->vars[$var[0]]['data_type'], [XOBJ_DTYPE_INT, XOBJ_DTYPE_DECIMAL, XOBJ_DTYPE_FLOAT])) {
53
-                    $criteria->add(new Criteria('`' . $var[0] . '`', $var[1], ($var[2] ?? '=')));
54
-                } elseif (\XOBJ_DTYPE_ENUM == $object->vars[$var[0]]['data_type']) {
55
-                    $criteria->add(new Criteria('`' . $var[0] . '`', $var[1], ($var[2] ?? '=')));
56
-                } elseif (\XOBJ_DTYPE_ARRAY == $object->vars[$var[0]]['data_type']) {
57
-                    $criteria->add(new Criteria('`' . $var[0] . '`', '%"' . $var[1] . '";%', ($var[2] ?? 'LIKE')));
53
+                    $criteria->add(new Criteria('`'.$var[0].'`', $var[1], ($var[2] ?? '=')));
54
+                } elseif (\XOBJ_DTYPE_ENUM==$object->vars[$var[0]]['data_type']) {
55
+                    $criteria->add(new Criteria('`'.$var[0].'`', $var[1], ($var[2] ?? '=')));
56
+                } elseif (\XOBJ_DTYPE_ARRAY==$object->vars[$var[0]]['data_type']) {
57
+                    $criteria->add(new Criteria('`'.$var[0].'`', '%"'.$var[1].'";%', ($var[2] ?? 'LIKE')));
58 58
                 }
59 59
             } elseif (!empty($var[1]) && \is_numeric($var[0])) {
60 60
                 $criteria->add(new Criteria($var[0], $var[1]));
Please login to merge, or discard this patch.
class/Genre.php 2 patches
Indentation   +74 added lines, -74 removed lines patch added patch discarded remove patch
@@ -11,83 +11,83 @@
 block discarded – undo
11 11
  */
12 12
 class Genre extends \XoopsObject
13 13
 {
14
-    /**
15
-     * Genre constructor.
16
-     * @param null $fid
17
-     */
18
-    public function __construct($fid = null)
19
-    {
20
-        $this->initVar('gid', \XOBJ_DTYPE_INT, 0, false);
21
-        $this->initVar('name', \XOBJ_DTYPE_TXTBOX, null, false, 128);
22
-        $this->initVar('artists', \XOBJ_DTYPE_INT, 0, false);
23
-        $this->initVar('albums', \XOBJ_DTYPE_INT, 0, false);
24
-        $this->initVar('songs', \XOBJ_DTYPE_INT, 0, false);
25
-        $this->initVar('hits', \XOBJ_DTYPE_INT, 0, false);
26
-        $this->initVar('rank', \XOBJ_DTYPE_DECIMAL, 0, false);
27
-        $this->initVar('votes', \XOBJ_DTYPE_INT, 0, false);
28
-        $this->initVar('created', \XOBJ_DTYPE_INT, 0, false);
29
-        $this->initVar('updated', \XOBJ_DTYPE_INT, 0, false);
30
-    }
14
+	/**
15
+	 * Genre constructor.
16
+	 * @param null $fid
17
+	 */
18
+	public function __construct($fid = null)
19
+	{
20
+		$this->initVar('gid', \XOBJ_DTYPE_INT, 0, false);
21
+		$this->initVar('name', \XOBJ_DTYPE_TXTBOX, null, false, 128);
22
+		$this->initVar('artists', \XOBJ_DTYPE_INT, 0, false);
23
+		$this->initVar('albums', \XOBJ_DTYPE_INT, 0, false);
24
+		$this->initVar('songs', \XOBJ_DTYPE_INT, 0, false);
25
+		$this->initVar('hits', \XOBJ_DTYPE_INT, 0, false);
26
+		$this->initVar('rank', \XOBJ_DTYPE_DECIMAL, 0, false);
27
+		$this->initVar('votes', \XOBJ_DTYPE_INT, 0, false);
28
+		$this->initVar('created', \XOBJ_DTYPE_INT, 0, false);
29
+		$this->initVar('updated', \XOBJ_DTYPE_INT, 0, false);
30
+	}
31 31
 
32
-    /**
33
-     * @param bool $as_array
34
-     * @return array|string
35
-     */
36
-    public function getForm($as_array = false)
37
-    {
38
-        return FormController::getFormGenre($this, $as_array);
39
-    }
32
+	/**
33
+	 * @param bool $as_array
34
+	 * @return array|string
35
+	 */
36
+	public function getForm($as_array = false)
37
+	{
38
+		return FormController::getFormGenre($this, $as_array);
39
+	}
40 40
 
41
-    /**
42
-     * @return array
43
-     */
44
-    public function toArray(): array
45
-    {
46
-        $ret  = parent::toArray();
47
-        $form = $this->getForm(true);
48
-        foreach ($form as $key => $element) {
49
-            $ret['form'][$key] = $element->render();
50
-        }
51
-        foreach (['created', 'updated'] as $key) {
52
-            if ($this->getVar($key) > 0) {
53
-                $ret['form'][$key] = \date(_DATESTRING, $this->getVar($key));
54
-                $ret[$key]         = \date(_DATESTRING, $this->getVar($key));
55
-            }
56
-        }
57
-        $ret['rank'] = \number_format(($this->getVar('rank') > 0 && $this->getVar('votes') > 0 ? $this->getVar('rank') / $this->getVar('votes') : 0), 2) . \_MI_SONGLIST_OFTEN;
41
+	/**
42
+	 * @return array
43
+	 */
44
+	public function toArray(): array
45
+	{
46
+		$ret  = parent::toArray();
47
+		$form = $this->getForm(true);
48
+		foreach ($form as $key => $element) {
49
+			$ret['form'][$key] = $element->render();
50
+		}
51
+		foreach (['created', 'updated'] as $key) {
52
+			if ($this->getVar($key) > 0) {
53
+				$ret['form'][$key] = \date(_DATESTRING, $this->getVar($key));
54
+				$ret[$key]         = \date(_DATESTRING, $this->getVar($key));
55
+			}
56
+		}
57
+		$ret['rank'] = \number_format(($this->getVar('rank') > 0 && $this->getVar('votes') > 0 ? $this->getVar('rank') / $this->getVar('votes') : 0), 2) . \_MI_SONGLIST_OFTEN;
58 58
 
59
-        return $ret;
60
-    }
59
+		return $ret;
60
+	}
61 61
 
62
-    /**
63
-     * @return string
64
-     */
65
-    public function getURL(): string
66
-    {
67
-        global $file, $op, $fct, $id, $value, $gid, $cid, $start, $limit;
68
-        if ($GLOBALS['songlistModuleConfig']['htaccess']) {
69
-            return XOOPS_URL
70
-                   . '/'
71
-                   . $GLOBALS['songlistModuleConfig']['baseurl']
72
-                   . '/'
73
-                   . $file
74
-                   . '/'
75
-                   . \urlencode(\str_replace([' ', \chr(9)], '-', $this->getVar('name')))
76
-                   . '/'
77
-                   . $op
78
-                   . '-'
79
-                   . $fct
80
-                   . '-'
81
-                   . $this->getVar('gid')
82
-                   . '-'
83
-                   . \urlencode($value)
84
-                   . '-'
85
-                   . $gid
86
-                   . '-'
87
-                   . $cid
88
-                   . $GLOBALS['songlistModuleConfig']['endofurl'];
89
-        }
62
+	/**
63
+	 * @return string
64
+	 */
65
+	public function getURL(): string
66
+	{
67
+		global $file, $op, $fct, $id, $value, $gid, $cid, $start, $limit;
68
+		if ($GLOBALS['songlistModuleConfig']['htaccess']) {
69
+			return XOOPS_URL
70
+				   . '/'
71
+				   . $GLOBALS['songlistModuleConfig']['baseurl']
72
+				   . '/'
73
+				   . $file
74
+				   . '/'
75
+				   . \urlencode(\str_replace([' ', \chr(9)], '-', $this->getVar('name')))
76
+				   . '/'
77
+				   . $op
78
+				   . '-'
79
+				   . $fct
80
+				   . '-'
81
+				   . $this->getVar('gid')
82
+				   . '-'
83
+				   . \urlencode($value)
84
+				   . '-'
85
+				   . $gid
86
+				   . '-'
87
+				   . $cid
88
+				   . $GLOBALS['songlistModuleConfig']['endofurl'];
89
+		}
90 90
 
91
-        return XOOPS_URL . '/modules/songlist/' . $file . '.php?op=' . $op . '&fct=' . $fct . '&id=' . $this->getVar('gid') . '&value=' . \urlencode($value ?? '') . '&gid=' . $gid . '&cid=' . $cid;
92
-    }
91
+		return XOOPS_URL . '/modules/songlist/' . $file . '.php?op=' . $op . '&fct=' . $fct . '&id=' . $this->getVar('gid') . '&value=' . \urlencode($value ?? '') . '&gid=' . $gid . '&cid=' . $cid;
92
+	}
93 93
 }
Please login to merge, or discard this patch.
Spacing   +4 added lines, -4 removed lines patch added patch discarded remove patch
@@ -2,7 +2,7 @@  discard block
 block discarded – undo
2 2
 
3 3
 namespace XoopsModules\Songlist;
4 4
 
5
-require_once \dirname(__DIR__) . '/include/songlist.object.php';
5
+require_once \dirname(__DIR__).'/include/songlist.object.php';
6 6
 // require_once \dirname(__DIR__) . '/include/songlist.form.php';
7 7
 use  XoopsModules\Songlist\Form\FormController;
8 8
 
@@ -49,12 +49,12 @@  discard block
 block discarded – undo
49 49
             $ret['form'][$key] = $element->render();
50 50
         }
51 51
         foreach (['created', 'updated'] as $key) {
52
-            if ($this->getVar($key) > 0) {
52
+            if ($this->getVar($key)>0) {
53 53
                 $ret['form'][$key] = \date(_DATESTRING, $this->getVar($key));
54 54
                 $ret[$key]         = \date(_DATESTRING, $this->getVar($key));
55 55
             }
56 56
         }
57
-        $ret['rank'] = \number_format(($this->getVar('rank') > 0 && $this->getVar('votes') > 0 ? $this->getVar('rank') / $this->getVar('votes') : 0), 2) . \_MI_SONGLIST_OFTEN;
57
+        $ret['rank'] = \number_format(($this->getVar('rank')>0 && $this->getVar('votes')>0 ? $this->getVar('rank')/$this->getVar('votes') : 0), 2).\_MI_SONGLIST_OFTEN;
58 58
 
59 59
         return $ret;
60 60
     }
@@ -88,6 +88,6 @@  discard block
 block discarded – undo
88 88
                    . $GLOBALS['songlistModuleConfig']['endofurl'];
89 89
         }
90 90
 
91
-        return XOOPS_URL . '/modules/songlist/' . $file . '.php?op=' . $op . '&fct=' . $fct . '&id=' . $this->getVar('gid') . '&value=' . \urlencode($value ?? '') . '&gid=' . $gid . '&cid=' . $cid;
91
+        return XOOPS_URL.'/modules/songlist/'.$file.'.php?op='.$op.'&fct='.$fct.'&id='.$this->getVar('gid').'&value='.\urlencode($value ?? '').'&gid='.$gid.'&cid='.$cid;
92 92
     }
93 93
 }
Please login to merge, or discard this patch.
class/ExtrasHandler.php 2 patches
Indentation   +209 added lines, -209 removed lines patch added patch discarded remove patch
@@ -11,213 +11,213 @@
 block discarded – undo
11 11
  */
12 12
 class ExtrasHandler extends XoopsPersistableObjectHandler
13 13
 {
14
-    /**
15
-     * holds reference to {@link ObjectsFieldHandler} object
16
-     */
17
-    public $_fHandler;
18
-    /**
19
-     * Array of {@link XoopsObjectsField} objects
20
-     * @var array
21
-     */
22
-    public $_fields = [];
23
-
24
-    /**
25
-     * ExtrasHandler constructor.
26
-     * @param \XoopsDatabase $db
27
-     */
28
-    public function __construct(XoopsDatabase $db)
29
-    {
30
-        parent::__construct($db, 'songlist_extra', Extras::class, 'sid');
31
-        $this->_fHandler = \XoopsModules\Songlist\Helper::getInstance()->getHandler('Field');
32
-    }
33
-
34
-    /**
35
-     * create a new {@link Extras}
36
-     *
37
-     * @param bool $isNew Flag the new objects as "new"?
38
-     *
39
-     * @return object {@link Extras}
40
-     */
41
-    public function &create($isNew = true): object
42
-    {
43
-        $obj          = new $this->className($this->loadFields());
44
-        $obj->handler = $this;
45
-        $obj->setNew();
46
-
47
-        return $obj;
48
-    }
49
-
50
-    /**
51
-     * Get a {@link Extras}
52
-     *
53
-     * @param null $id
54
-     * @param null $fields
55
-     * @return object <a href='psi_element://Extras'>Extras</a>
56
-     */
57
-    public function get($id = null, $fields = null): object //get($uid, $createOnFailure = true)
58
-    {
59
-        if (null === $fields) {
60
-            $fields = true;
61
-        }
62
-        $obj = parent::get($id);
63
-        if (!\is_object($obj) && $fields) {
64
-            $obj = $this->create();
65
-        }
66
-
67
-        return $obj;
68
-    }
69
-
70
-    /**
71
-     * Create new {@link ObjectsField} object
72
-     *
73
-     * @param bool $isNew
74
-     *
75
-     * @return object
76
-     */
77
-    public function &createField($isNew = true): object
78
-    {
79
-        $return = $this->_fHandler->create($isNew);
80
-
81
-        return $return;
82
-    }
83
-
84
-    /**
85
-     * Load field information
86
-     *
87
-     * @return array|false
88
-     */
89
-    public function loadFields()
90
-    {
91
-        if (0 == \count($this->_fields)) {
92
-            $this->_fields = $this->_fHandler->loadFields();
93
-        }
94
-
95
-        return (0 == $this->_fields || empty($this->_fields) ? false : $this->_fields);
96
-    }
97
-
98
-    /**
99
-     * @return array
100
-     */
101
-    public function getPostVars(): array
102
-    {
103
-        return ['sid', 'cid', 'gid', 'aids', 'abid', 'songid', 'title', 'lyrics', 'hits', 'rank', 'votes', 'tags', 'created', 'updated'];
104
-    }
105
-
106
-    /**
107
-     * @param      $criteria
108
-     * @param bool $id_as_key
109
-     * @param bool $as_object
110
-     * @return array
111
-     */
112
-    public function getFields($criteria, $id_as_key = true, $as_object = true): array
113
-    {
114
-        return $this->_fHandler->getObjects($criteria, $id_as_key, $as_object);
115
-    }
116
-
117
-    /**
118
-     * Insert a field in the database
119
-     *
120
-     * @param XoopsObject $field
121
-     * @param bool   $force
122
-     * @return mixed|void
123
-     */
124
-    public function insertField($field, $force = false)
125
-    {
126
-        return $this->_fHandler->insert($field, $force);
127
-    }
128
-
129
-    /**
130
-     * Delete a field from the database
131
-     *
132
-     * @param XoopsObject $field
133
-     * @param bool   $force
134
-     * @return bool
135
-     */
136
-    public function deleteField($field, $force = false)
137
-    {
138
-        return $this->_fHandler->delete($field, $force);
139
-    }
140
-
141
-    /**
142
-     * Save a new field in the database
143
-     *
144
-     * @param array $vars array of variables, taken from $module->loadInfo('Extras')['field']
145
-     * @param int   $weight
146
-     * @return string
147
-     * @internal param int $categoryid ID of the category to add it to
148
-     * @internal param int $type valuetype of the field
149
-     * @internal param int $moduleid ID of the module, this field belongs to
150
-     */
151
-    public function saveField($vars, $weight = 0): string
152
-    {
153
-        $field = $this->createField();
154
-        $field->setVar('field_name', $vars['name']);
155
-        $field->setVar('field_valuetype', $vars['valuetype']);
156
-        $field->setVar('field_type', $vars['type']);
157
-        $field->setVar('field_weight', $weight);
158
-        if (isset($vars['title'])) {
159
-            $field->setVar('field_title', $vars['title']);
160
-        }
161
-        if (isset($vars['description'])) {
162
-            $field->setVar('field_description', $vars['description']);
163
-        }
164
-        if (isset($vars['required'])) {
165
-            $field->setVar('field_required', $vars['required']); //0 = no, 1 = yes
166
-        }
167
-        if (isset($vars['maxlength'])) {
168
-            $field->setVar('field_maxlength', $vars['maxlength']);
169
-        }
170
-        if (isset($vars['default'])) {
171
-            $field->setVar('field_default', $vars['default']);
172
-        }
173
-        if (isset($vars['notnull'])) {
174
-            $field->setVar('field_notnull', $vars['notnull']);
175
-        }
176
-        if (isset($vars['show'])) {
177
-            $field->setVar('field_show', $vars['show']);
178
-        }
179
-        if (isset($vars['edit'])) {
180
-            $field->setVar('field_edit', $vars['edit']);
181
-        }
182
-        if (isset($vars['config'])) {
183
-            $field->setVar('field_config', $vars['config']);
184
-        }
185
-        if (isset($vars['options'])) {
186
-            $field->setVar('field_options', $vars['options']);
187
-        } else {
188
-            $field->setVar('field_options', []);
189
-        }
190
-        if ($this->insertField($field)) {
191
-            $msg = '&nbsp;&nbsp;Field <b>' . $vars['name'] . '</b> added to the database';
192
-        } else {
193
-            $msg = '&nbsp;&nbsp;<span style="color:#ff0000;">ERROR: Could not insert field <b>' . $vars['name'] . '</b> into the database. ' . \implode(' ', $field->getErrors()) . $this->db->error() . '</span>';
194
-        }
195
-        unset($field);
196
-
197
-        return $msg;
198
-    }
199
-
200
-    /**
201
-     * insert a new object in the database
202
-     *
203
-     * @param \XoopsObject $obj         reference to the object
204
-     * @param bool         $force       whether to force the query execution despite security settings
205
-     * @param bool         $checkObject check if the object is dirty and clean the attributes
206
-     *
207
-     * @return bool FALSE if failed, TRUE if already present and unchanged or successful
208
-     */
209
-    public function insert(XoopsObject $obj, $force = false, $checkObject = true): bool
210
-    {
211
-        $uservars = $this->getPostVars();
212
-        foreach ($uservars as $var) {
213
-            if ('sid' != $var) {
214
-                unset($obj->vars[$var]);
215
-            }
216
-        }
217
-        if (0 == \count($obj->vars)) {
218
-            return true;
219
-        }
220
-
221
-        return (bool)parent::insert($obj, $force, $checkObject);
222
-    }
14
+	/**
15
+	 * holds reference to {@link ObjectsFieldHandler} object
16
+	 */
17
+	public $_fHandler;
18
+	/**
19
+	 * Array of {@link XoopsObjectsField} objects
20
+	 * @var array
21
+	 */
22
+	public $_fields = [];
23
+
24
+	/**
25
+	 * ExtrasHandler constructor.
26
+	 * @param \XoopsDatabase $db
27
+	 */
28
+	public function __construct(XoopsDatabase $db)
29
+	{
30
+		parent::__construct($db, 'songlist_extra', Extras::class, 'sid');
31
+		$this->_fHandler = \XoopsModules\Songlist\Helper::getInstance()->getHandler('Field');
32
+	}
33
+
34
+	/**
35
+	 * create a new {@link Extras}
36
+	 *
37
+	 * @param bool $isNew Flag the new objects as "new"?
38
+	 *
39
+	 * @return object {@link Extras}
40
+	 */
41
+	public function &create($isNew = true): object
42
+	{
43
+		$obj          = new $this->className($this->loadFields());
44
+		$obj->handler = $this;
45
+		$obj->setNew();
46
+
47
+		return $obj;
48
+	}
49
+
50
+	/**
51
+	 * Get a {@link Extras}
52
+	 *
53
+	 * @param null $id
54
+	 * @param null $fields
55
+	 * @return object <a href='psi_element://Extras'>Extras</a>
56
+	 */
57
+	public function get($id = null, $fields = null): object //get($uid, $createOnFailure = true)
58
+	{
59
+		if (null === $fields) {
60
+			$fields = true;
61
+		}
62
+		$obj = parent::get($id);
63
+		if (!\is_object($obj) && $fields) {
64
+			$obj = $this->create();
65
+		}
66
+
67
+		return $obj;
68
+	}
69
+
70
+	/**
71
+	 * Create new {@link ObjectsField} object
72
+	 *
73
+	 * @param bool $isNew
74
+	 *
75
+	 * @return object
76
+	 */
77
+	public function &createField($isNew = true): object
78
+	{
79
+		$return = $this->_fHandler->create($isNew);
80
+
81
+		return $return;
82
+	}
83
+
84
+	/**
85
+	 * Load field information
86
+	 *
87
+	 * @return array|false
88
+	 */
89
+	public function loadFields()
90
+	{
91
+		if (0 == \count($this->_fields)) {
92
+			$this->_fields = $this->_fHandler->loadFields();
93
+		}
94
+
95
+		return (0 == $this->_fields || empty($this->_fields) ? false : $this->_fields);
96
+	}
97
+
98
+	/**
99
+	 * @return array
100
+	 */
101
+	public function getPostVars(): array
102
+	{
103
+		return ['sid', 'cid', 'gid', 'aids', 'abid', 'songid', 'title', 'lyrics', 'hits', 'rank', 'votes', 'tags', 'created', 'updated'];
104
+	}
105
+
106
+	/**
107
+	 * @param      $criteria
108
+	 * @param bool $id_as_key
109
+	 * @param bool $as_object
110
+	 * @return array
111
+	 */
112
+	public function getFields($criteria, $id_as_key = true, $as_object = true): array
113
+	{
114
+		return $this->_fHandler->getObjects($criteria, $id_as_key, $as_object);
115
+	}
116
+
117
+	/**
118
+	 * Insert a field in the database
119
+	 *
120
+	 * @param XoopsObject $field
121
+	 * @param bool   $force
122
+	 * @return mixed|void
123
+	 */
124
+	public function insertField($field, $force = false)
125
+	{
126
+		return $this->_fHandler->insert($field, $force);
127
+	}
128
+
129
+	/**
130
+	 * Delete a field from the database
131
+	 *
132
+	 * @param XoopsObject $field
133
+	 * @param bool   $force
134
+	 * @return bool
135
+	 */
136
+	public function deleteField($field, $force = false)
137
+	{
138
+		return $this->_fHandler->delete($field, $force);
139
+	}
140
+
141
+	/**
142
+	 * Save a new field in the database
143
+	 *
144
+	 * @param array $vars array of variables, taken from $module->loadInfo('Extras')['field']
145
+	 * @param int   $weight
146
+	 * @return string
147
+	 * @internal param int $categoryid ID of the category to add it to
148
+	 * @internal param int $type valuetype of the field
149
+	 * @internal param int $moduleid ID of the module, this field belongs to
150
+	 */
151
+	public function saveField($vars, $weight = 0): string
152
+	{
153
+		$field = $this->createField();
154
+		$field->setVar('field_name', $vars['name']);
155
+		$field->setVar('field_valuetype', $vars['valuetype']);
156
+		$field->setVar('field_type', $vars['type']);
157
+		$field->setVar('field_weight', $weight);
158
+		if (isset($vars['title'])) {
159
+			$field->setVar('field_title', $vars['title']);
160
+		}
161
+		if (isset($vars['description'])) {
162
+			$field->setVar('field_description', $vars['description']);
163
+		}
164
+		if (isset($vars['required'])) {
165
+			$field->setVar('field_required', $vars['required']); //0 = no, 1 = yes
166
+		}
167
+		if (isset($vars['maxlength'])) {
168
+			$field->setVar('field_maxlength', $vars['maxlength']);
169
+		}
170
+		if (isset($vars['default'])) {
171
+			$field->setVar('field_default', $vars['default']);
172
+		}
173
+		if (isset($vars['notnull'])) {
174
+			$field->setVar('field_notnull', $vars['notnull']);
175
+		}
176
+		if (isset($vars['show'])) {
177
+			$field->setVar('field_show', $vars['show']);
178
+		}
179
+		if (isset($vars['edit'])) {
180
+			$field->setVar('field_edit', $vars['edit']);
181
+		}
182
+		if (isset($vars['config'])) {
183
+			$field->setVar('field_config', $vars['config']);
184
+		}
185
+		if (isset($vars['options'])) {
186
+			$field->setVar('field_options', $vars['options']);
187
+		} else {
188
+			$field->setVar('field_options', []);
189
+		}
190
+		if ($this->insertField($field)) {
191
+			$msg = '&nbsp;&nbsp;Field <b>' . $vars['name'] . '</b> added to the database';
192
+		} else {
193
+			$msg = '&nbsp;&nbsp;<span style="color:#ff0000;">ERROR: Could not insert field <b>' . $vars['name'] . '</b> into the database. ' . \implode(' ', $field->getErrors()) . $this->db->error() . '</span>';
194
+		}
195
+		unset($field);
196
+
197
+		return $msg;
198
+	}
199
+
200
+	/**
201
+	 * insert a new object in the database
202
+	 *
203
+	 * @param \XoopsObject $obj         reference to the object
204
+	 * @param bool         $force       whether to force the query execution despite security settings
205
+	 * @param bool         $checkObject check if the object is dirty and clean the attributes
206
+	 *
207
+	 * @return bool FALSE if failed, TRUE if already present and unchanged or successful
208
+	 */
209
+	public function insert(XoopsObject $obj, $force = false, $checkObject = true): bool
210
+	{
211
+		$uservars = $this->getPostVars();
212
+		foreach ($uservars as $var) {
213
+			if ('sid' != $var) {
214
+				unset($obj->vars[$var]);
215
+			}
216
+		}
217
+		if (0 == \count($obj->vars)) {
218
+			return true;
219
+		}
220
+
221
+		return (bool)parent::insert($obj, $force, $checkObject);
222
+	}
223 223
 }
Please login to merge, or discard this patch.
Spacing   +8 added lines, -8 removed lines patch added patch discarded remove patch
@@ -56,7 +56,7 @@  discard block
 block discarded – undo
56 56
      */
57 57
     public function get($id = null, $fields = null): object //get($uid, $createOnFailure = true)
58 58
     {
59
-        if (null === $fields) {
59
+        if (null===$fields) {
60 60
             $fields = true;
61 61
         }
62 62
         $obj = parent::get($id);
@@ -88,11 +88,11 @@  discard block
 block discarded – undo
88 88
      */
89 89
     public function loadFields()
90 90
     {
91
-        if (0 == \count($this->_fields)) {
91
+        if (0==\count($this->_fields)) {
92 92
             $this->_fields = $this->_fHandler->loadFields();
93 93
         }
94 94
 
95
-        return (0 == $this->_fields || empty($this->_fields) ? false : $this->_fields);
95
+        return (0==$this->_fields || empty($this->_fields) ? false : $this->_fields);
96 96
     }
97 97
 
98 98
     /**
@@ -188,9 +188,9 @@  discard block
 block discarded – undo
188 188
             $field->setVar('field_options', []);
189 189
         }
190 190
         if ($this->insertField($field)) {
191
-            $msg = '&nbsp;&nbsp;Field <b>' . $vars['name'] . '</b> added to the database';
191
+            $msg = '&nbsp;&nbsp;Field <b>'.$vars['name'].'</b> added to the database';
192 192
         } else {
193
-            $msg = '&nbsp;&nbsp;<span style="color:#ff0000;">ERROR: Could not insert field <b>' . $vars['name'] . '</b> into the database. ' . \implode(' ', $field->getErrors()) . $this->db->error() . '</span>';
193
+            $msg = '&nbsp;&nbsp;<span style="color:#ff0000;">ERROR: Could not insert field <b>'.$vars['name'].'</b> into the database. '.\implode(' ', $field->getErrors()).$this->db->error().'</span>';
194 194
         }
195 195
         unset($field);
196 196
 
@@ -210,14 +210,14 @@  discard block
 block discarded – undo
210 210
     {
211 211
         $uservars = $this->getPostVars();
212 212
         foreach ($uservars as $var) {
213
-            if ('sid' != $var) {
213
+            if ('sid'!=$var) {
214 214
                 unset($obj->vars[$var]);
215 215
             }
216 216
         }
217
-        if (0 == \count($obj->vars)) {
217
+        if (0==\count($obj->vars)) {
218 218
             return true;
219 219
         }
220 220
 
221
-        return (bool)parent::insert($obj, $force, $checkObject);
221
+        return (bool) parent::insert($obj, $force, $checkObject);
222 222
     }
223 223
 }
Please login to merge, or discard this patch.
class/CategoryHandler.php 2 patches
Indentation   +180 added lines, -180 removed lines patch added patch discarded remove patch
@@ -7,165 +7,165 @@  discard block
 block discarded – undo
7 7
  */
8 8
 class CategoryHandler extends \XoopsPersistableObjectHandler
9 9
 {
10
-    /**
11
-     * CategoryHandler constructor.
12
-     * @param \XoopsDatabase $db
13
-     */
14
-    public function __construct(\XoopsDatabase $db)
15
-    {
16
-        parent::__construct($db, 'songlist_category', Category::class, 'cid', 'name');
17
-    }
18
-
19
-    /**
20
-     * @return array
21
-     */
22
-    public function filterFields(): array
23
-    {
24
-        return ['cid', 'pid', 'weight', 'name', 'image', 'path', 'artists', 'albums', 'songs', 'hits', 'rank', 'votes', 'created', 'updated'];
25
-    }
26
-
27
-    /**
28
-     * @param $filter
29
-     * @return \CriteriaCompo
30
-     */
31
-    public function getFilterCriteria($filter): \CriteriaCompo
32
-    {
33
-        $parts    = \explode('|', $filter);
34
-        $criteria = new \CriteriaCompo();
35
-        foreach ($parts as $part) {
36
-            $var = \explode(',', $part);
37
-            if (!empty($var[1]) && !\is_numeric($var[0])) {
38
-                $object = $this->create();
39
-                if (\XOBJ_DTYPE_TXTBOX == $object->vars[$var[0]]['data_type']
40
-                    || \XOBJ_DTYPE_TXTAREA == $object->vars[$var[0]]['data_type']) {
41
-                    $criteria->add(new \Criteria('`' . $var[0] . '`', '%' . $var[1] . '%', ($var[2] ?? 'LIKE')));
42
-                } elseif (in_array($object->vars[$var[0]]['data_type'], [XOBJ_DTYPE_INT, XOBJ_DTYPE_DECIMAL, XOBJ_DTYPE_FLOAT])) {
43
-                    $criteria->add(new \Criteria('`' . $var[0] . '`', $var[1], ($var[2] ?? '=')));
44
-                } elseif (\XOBJ_DTYPE_ENUM == $object->vars[$var[0]]['data_type']) {
45
-                    $criteria->add(new \Criteria('`' . $var[0] . '`', $var[1], ($var[2] ?? '=')));
46
-                } elseif (\XOBJ_DTYPE_ARRAY == $object->vars[$var[0]]['data_type']) {
47
-                    $criteria->add(new \Criteria('`' . $var[0] . '`', '%"' . $var[1] . '";%', ($var[2] ?? 'LIKE')));
48
-                }
49
-            } elseif (!empty($var[1]) && \is_numeric($var[0])) {
50
-                $criteria->add(new \Criteria($var[0], $var[1]));
51
-            }
52
-        }
53
-
54
-        return $criteria;
55
-    }
56
-
57
-    /**
58
-     * @param        $filter
59
-     * @param        $field
60
-     * @param string $sort
61
-     * @param string $op
62
-     * @param string $fct
63
-     * @return string
64
-     */
65
-    public function getFilterForm($filter, $field, $sort = 'created', $op = 'dashboard', $fct = 'list'): string
66
-    {
67
-        $ele = Utility::getFilterElement($filter, $field, $sort, $op, $fct);
68
-        if (\is_object($ele)) {
69
-            return $ele->render();
70
-        }
71
-
72
-        return '&nbsp;';
73
-    }
74
-
75
-    /**
76
-     * @param int $pid
77
-     * @return mixed
78
-     */
79
-    public function GetCatAndSubCat($pid = 0)
80
-    {
81
-        $categories  = $this->getObjects(new \Criteria('pid', $pid), true);
82
-        $langs_array = $this->TreeIDs([], $categories, -1);
83
-
84
-        return $langs_array;
85
-    }
86
-
87
-    /**
88
-     * @param $langs_array
89
-     * @param $categories
90
-     * @param $level
91
-     * @return mixed
92
-     */
93
-    private function TreeIDs($langs_array, $categories, $level)
94
-    {
95
-        foreach ($categories as $catid => $category) {
96
-            $langs_array[$catid] = $catid;
97
-            $categoriesb         = $this->getObjects(new \Criteria('pid', $catid), true);
98
-            if ($categoriesb) {
99
-                $langs_array = $this->TreeIDs($langs_array, $categoriesb, $level);
100
-            }
101
-        }
102
-
103
-        return $langs_array;
104
-    }
105
-
106
-    /**
107
-     * @param bool $force
108
-     * @return bool|mixed
109
-     */
110
-    public function insert(\XoopsObject $obj, $force = true)
111
-    {
112
-        if ($obj->isNew()) {
113
-            $obj->setVar('created', \time());
114
-        } else {
115
-            $obj->setVar('updated', \time());
116
-        }
117
-        if ('' == $obj->getVar('name')) {
118
-            return false;
119
-        }
120
-
121
-        return parent::insert($obj, $force);
122
-    }
123
-
124
-    public $_objects = ['object' => [], 'array' => []];
125
-
126
-    /**
127
-     * @param null $id
128
-     * @param null $fields
129
-     * @return \XoopsObject
130
-     */
131
-    public function get($id = null, $fields = null): \XoopsObject//get($id, $fields = '*')
132
-    {
133
-        $fields = $fields ?: '*';
134
-        if (!isset($this->_objects['object'][$id])) {
135
-            $this->_objects['object'][$id] = parent::get($id, $fields);
136
-            if (!isset($GLOBALS['songlistAdmin'])) {
137
-                $sql = 'UPDATE `' . $this->table . '` set hits=hits+1 where `' . $this->keyName . '` = ' . $id;
138
-                $GLOBALS['xoopsDB']->queryF($sql);
139
-            }
140
-        }
141
-
142
-        return $this->_objects['object'][$id];
143
-    }
144
-
145
-    /**
146
-     * @param \XoopsObject $object
147
-     * @param bool         $force
148
-     * @return bool
149
-     */
150
-    public function delete(\XoopsObject $object, $force = true): bool
151
-    {
152
-        parent::delete($object, $force);
153
-        $sql = 'UPDATE ' . $GLOBALS['xoopsDB']->prefix('songlist_songs') . ' SET `cid` = 0 WHERE `cid` = ' . $object->getVar('cid');
154
-
155
-        return $GLOBALS['xoopsDB']->queryF($sql);
156
-    }
157
-
158
-    /**
159
-     * @param \CriteriaElement|\CriteriaCompo $criteria
160
-     * @param bool $id_as_key
161
-     * @param bool $as_object
162
-     * @return array
163
-     */
164
-    public function &getObjects($criteria = null, $id_as_key = false, $as_object = true): array
165
-    {
166
-        $ret = parent::getObjects($criteria, $id_as_key, $as_object);
167
-
168
-        /*if (!isset($GLOBALS['songlistAdmin'])) {
10
+	/**
11
+	 * CategoryHandler constructor.
12
+	 * @param \XoopsDatabase $db
13
+	 */
14
+	public function __construct(\XoopsDatabase $db)
15
+	{
16
+		parent::__construct($db, 'songlist_category', Category::class, 'cid', 'name');
17
+	}
18
+
19
+	/**
20
+	 * @return array
21
+	 */
22
+	public function filterFields(): array
23
+	{
24
+		return ['cid', 'pid', 'weight', 'name', 'image', 'path', 'artists', 'albums', 'songs', 'hits', 'rank', 'votes', 'created', 'updated'];
25
+	}
26
+
27
+	/**
28
+	 * @param $filter
29
+	 * @return \CriteriaCompo
30
+	 */
31
+	public function getFilterCriteria($filter): \CriteriaCompo
32
+	{
33
+		$parts    = \explode('|', $filter);
34
+		$criteria = new \CriteriaCompo();
35
+		foreach ($parts as $part) {
36
+			$var = \explode(',', $part);
37
+			if (!empty($var[1]) && !\is_numeric($var[0])) {
38
+				$object = $this->create();
39
+				if (\XOBJ_DTYPE_TXTBOX == $object->vars[$var[0]]['data_type']
40
+					|| \XOBJ_DTYPE_TXTAREA == $object->vars[$var[0]]['data_type']) {
41
+					$criteria->add(new \Criteria('`' . $var[0] . '`', '%' . $var[1] . '%', ($var[2] ?? 'LIKE')));
42
+				} elseif (in_array($object->vars[$var[0]]['data_type'], [XOBJ_DTYPE_INT, XOBJ_DTYPE_DECIMAL, XOBJ_DTYPE_FLOAT])) {
43
+					$criteria->add(new \Criteria('`' . $var[0] . '`', $var[1], ($var[2] ?? '=')));
44
+				} elseif (\XOBJ_DTYPE_ENUM == $object->vars[$var[0]]['data_type']) {
45
+					$criteria->add(new \Criteria('`' . $var[0] . '`', $var[1], ($var[2] ?? '=')));
46
+				} elseif (\XOBJ_DTYPE_ARRAY == $object->vars[$var[0]]['data_type']) {
47
+					$criteria->add(new \Criteria('`' . $var[0] . '`', '%"' . $var[1] . '";%', ($var[2] ?? 'LIKE')));
48
+				}
49
+			} elseif (!empty($var[1]) && \is_numeric($var[0])) {
50
+				$criteria->add(new \Criteria($var[0], $var[1]));
51
+			}
52
+		}
53
+
54
+		return $criteria;
55
+	}
56
+
57
+	/**
58
+	 * @param        $filter
59
+	 * @param        $field
60
+	 * @param string $sort
61
+	 * @param string $op
62
+	 * @param string $fct
63
+	 * @return string
64
+	 */
65
+	public function getFilterForm($filter, $field, $sort = 'created', $op = 'dashboard', $fct = 'list'): string
66
+	{
67
+		$ele = Utility::getFilterElement($filter, $field, $sort, $op, $fct);
68
+		if (\is_object($ele)) {
69
+			return $ele->render();
70
+		}
71
+
72
+		return '&nbsp;';
73
+	}
74
+
75
+	/**
76
+	 * @param int $pid
77
+	 * @return mixed
78
+	 */
79
+	public function GetCatAndSubCat($pid = 0)
80
+	{
81
+		$categories  = $this->getObjects(new \Criteria('pid', $pid), true);
82
+		$langs_array = $this->TreeIDs([], $categories, -1);
83
+
84
+		return $langs_array;
85
+	}
86
+
87
+	/**
88
+	 * @param $langs_array
89
+	 * @param $categories
90
+	 * @param $level
91
+	 * @return mixed
92
+	 */
93
+	private function TreeIDs($langs_array, $categories, $level)
94
+	{
95
+		foreach ($categories as $catid => $category) {
96
+			$langs_array[$catid] = $catid;
97
+			$categoriesb         = $this->getObjects(new \Criteria('pid', $catid), true);
98
+			if ($categoriesb) {
99
+				$langs_array = $this->TreeIDs($langs_array, $categoriesb, $level);
100
+			}
101
+		}
102
+
103
+		return $langs_array;
104
+	}
105
+
106
+	/**
107
+	 * @param bool $force
108
+	 * @return bool|mixed
109
+	 */
110
+	public function insert(\XoopsObject $obj, $force = true)
111
+	{
112
+		if ($obj->isNew()) {
113
+			$obj->setVar('created', \time());
114
+		} else {
115
+			$obj->setVar('updated', \time());
116
+		}
117
+		if ('' == $obj->getVar('name')) {
118
+			return false;
119
+		}
120
+
121
+		return parent::insert($obj, $force);
122
+	}
123
+
124
+	public $_objects = ['object' => [], 'array' => []];
125
+
126
+	/**
127
+	 * @param null $id
128
+	 * @param null $fields
129
+	 * @return \XoopsObject
130
+	 */
131
+	public function get($id = null, $fields = null): \XoopsObject//get($id, $fields = '*')
132
+	{
133
+		$fields = $fields ?: '*';
134
+		if (!isset($this->_objects['object'][$id])) {
135
+			$this->_objects['object'][$id] = parent::get($id, $fields);
136
+			if (!isset($GLOBALS['songlistAdmin'])) {
137
+				$sql = 'UPDATE `' . $this->table . '` set hits=hits+1 where `' . $this->keyName . '` = ' . $id;
138
+				$GLOBALS['xoopsDB']->queryF($sql);
139
+			}
140
+		}
141
+
142
+		return $this->_objects['object'][$id];
143
+	}
144
+
145
+	/**
146
+	 * @param \XoopsObject $object
147
+	 * @param bool         $force
148
+	 * @return bool
149
+	 */
150
+	public function delete(\XoopsObject $object, $force = true): bool
151
+	{
152
+		parent::delete($object, $force);
153
+		$sql = 'UPDATE ' . $GLOBALS['xoopsDB']->prefix('songlist_songs') . ' SET `cid` = 0 WHERE `cid` = ' . $object->getVar('cid');
154
+
155
+		return $GLOBALS['xoopsDB']->queryF($sql);
156
+	}
157
+
158
+	/**
159
+	 * @param \CriteriaElement|\CriteriaCompo $criteria
160
+	 * @param bool $id_as_key
161
+	 * @param bool $as_object
162
+	 * @return array
163
+	 */
164
+	public function &getObjects($criteria = null, $id_as_key = false, $as_object = true): array
165
+	{
166
+		$ret = parent::getObjects($criteria, $id_as_key, $as_object);
167
+
168
+		/*if (!isset($GLOBALS['songlistAdmin'])) {
169 169
             $id = [];
170 170
             foreach($ret as $data) {
171 171
                 if ($as_object==true) {
@@ -186,25 +186,25 @@  discard block
 block discarded – undo
186 186
             $GLOBALS['xoopsDB']->queryF($sql);
187 187
         }*/
188 188
 
189
-        return $ret;
190
-    }
191
-
192
-    /**
193
-     * @param int $limit
194
-     * @return array
195
-     */
196
-    public function getTop($limit = 1): array
197
-    {
198
-        $sql     = 'SELECT * FROM `' . $this->table . '` WHERE `rank`>=0 ORDER BY (`rank`/`votes`) DESC LIMIT ' . $limit;
199
-        $results = $GLOBALS['xoopsDB']->queryF($sql);
200
-        $ret     = [];
201
-        $i       = 0;
202
-        while (false !== ($row = $GLOBALS['xoopsDB']->fetchArray($results))) {
203
-            $ret[$i] = $this->create();
204
-            $ret[$i]->assignVars($row);
205
-            ++$i;
206
-        }
207
-
208
-        return $ret;
209
-    }
189
+		return $ret;
190
+	}
191
+
192
+	/**
193
+	 * @param int $limit
194
+	 * @return array
195
+	 */
196
+	public function getTop($limit = 1): array
197
+	{
198
+		$sql     = 'SELECT * FROM `' . $this->table . '` WHERE `rank`>=0 ORDER BY (`rank`/`votes`) DESC LIMIT ' . $limit;
199
+		$results = $GLOBALS['xoopsDB']->queryF($sql);
200
+		$ret     = [];
201
+		$i       = 0;
202
+		while (false !== ($row = $GLOBALS['xoopsDB']->fetchArray($results))) {
203
+			$ret[$i] = $this->create();
204
+			$ret[$i]->assignVars($row);
205
+			++$i;
206
+		}
207
+
208
+		return $ret;
209
+	}
210 210
 }
Please login to merge, or discard this patch.
Spacing   +13 added lines, -13 removed lines patch added patch discarded remove patch
@@ -36,15 +36,15 @@  discard block
 block discarded – undo
36 36
             $var = \explode(',', $part);
37 37
             if (!empty($var[1]) && !\is_numeric($var[0])) {
38 38
                 $object = $this->create();
39
-                if (\XOBJ_DTYPE_TXTBOX == $object->vars[$var[0]]['data_type']
40
-                    || \XOBJ_DTYPE_TXTAREA == $object->vars[$var[0]]['data_type']) {
41
-                    $criteria->add(new \Criteria('`' . $var[0] . '`', '%' . $var[1] . '%', ($var[2] ?? 'LIKE')));
39
+                if (\XOBJ_DTYPE_TXTBOX==$object->vars[$var[0]]['data_type']
40
+                    || \XOBJ_DTYPE_TXTAREA==$object->vars[$var[0]]['data_type']) {
41
+                    $criteria->add(new \Criteria('`'.$var[0].'`', '%'.$var[1].'%', ($var[2] ?? 'LIKE')));
42 42
                 } elseif (in_array($object->vars[$var[0]]['data_type'], [XOBJ_DTYPE_INT, XOBJ_DTYPE_DECIMAL, XOBJ_DTYPE_FLOAT])) {
43
-                    $criteria->add(new \Criteria('`' . $var[0] . '`', $var[1], ($var[2] ?? '=')));
44
-                } elseif (\XOBJ_DTYPE_ENUM == $object->vars[$var[0]]['data_type']) {
45
-                    $criteria->add(new \Criteria('`' . $var[0] . '`', $var[1], ($var[2] ?? '=')));
46
-                } elseif (\XOBJ_DTYPE_ARRAY == $object->vars[$var[0]]['data_type']) {
47
-                    $criteria->add(new \Criteria('`' . $var[0] . '`', '%"' . $var[1] . '";%', ($var[2] ?? 'LIKE')));
43
+                    $criteria->add(new \Criteria('`'.$var[0].'`', $var[1], ($var[2] ?? '=')));
44
+                } elseif (\XOBJ_DTYPE_ENUM==$object->vars[$var[0]]['data_type']) {
45
+                    $criteria->add(new \Criteria('`'.$var[0].'`', $var[1], ($var[2] ?? '=')));
46
+                } elseif (\XOBJ_DTYPE_ARRAY==$object->vars[$var[0]]['data_type']) {
47
+                    $criteria->add(new \Criteria('`'.$var[0].'`', '%"'.$var[1].'";%', ($var[2] ?? 'LIKE')));
48 48
                 }
49 49
             } elseif (!empty($var[1]) && \is_numeric($var[0])) {
50 50
                 $criteria->add(new \Criteria($var[0], $var[1]));
@@ -114,7 +114,7 @@  discard block
 block discarded – undo
114 114
         } else {
115 115
             $obj->setVar('updated', \time());
116 116
         }
117
-        if ('' == $obj->getVar('name')) {
117
+        if (''==$obj->getVar('name')) {
118 118
             return false;
119 119
         }
120 120
 
@@ -134,7 +134,7 @@  discard block
 block discarded – undo
134 134
         if (!isset($this->_objects['object'][$id])) {
135 135
             $this->_objects['object'][$id] = parent::get($id, $fields);
136 136
             if (!isset($GLOBALS['songlistAdmin'])) {
137
-                $sql = 'UPDATE `' . $this->table . '` set hits=hits+1 where `' . $this->keyName . '` = ' . $id;
137
+                $sql = 'UPDATE `'.$this->table.'` set hits=hits+1 where `'.$this->keyName.'` = '.$id;
138 138
                 $GLOBALS['xoopsDB']->queryF($sql);
139 139
             }
140 140
         }
@@ -150,7 +150,7 @@  discard block
 block discarded – undo
150 150
     public function delete(\XoopsObject $object, $force = true): bool
151 151
     {
152 152
         parent::delete($object, $force);
153
-        $sql = 'UPDATE ' . $GLOBALS['xoopsDB']->prefix('songlist_songs') . ' SET `cid` = 0 WHERE `cid` = ' . $object->getVar('cid');
153
+        $sql = 'UPDATE '.$GLOBALS['xoopsDB']->prefix('songlist_songs').' SET `cid` = 0 WHERE `cid` = '.$object->getVar('cid');
154 154
 
155 155
         return $GLOBALS['xoopsDB']->queryF($sql);
156 156
     }
@@ -195,11 +195,11 @@  discard block
 block discarded – undo
195 195
      */
196 196
     public function getTop($limit = 1): array
197 197
     {
198
-        $sql     = 'SELECT * FROM `' . $this->table . '` WHERE `rank`>=0 ORDER BY (`rank`/`votes`) DESC LIMIT ' . $limit;
198
+        $sql     = 'SELECT * FROM `'.$this->table.'` WHERE `rank`>=0 ORDER BY (`rank`/`votes`) DESC LIMIT '.$limit;
199 199
         $results = $GLOBALS['xoopsDB']->queryF($sql);
200 200
         $ret     = [];
201 201
         $i       = 0;
202
-        while (false !== ($row = $GLOBALS['xoopsDB']->fetchArray($results))) {
202
+        while (false!==($row = $GLOBALS['xoopsDB']->fetchArray($results))) {
203 203
             $ret[$i] = $this->create();
204 204
             $ret[$i]->assignVars($row);
205 205
             ++$i;
Please login to merge, or discard this patch.
class/Requests.php 2 patches
Indentation   +47 added lines, -47 removed lines patch added patch discarded remove patch
@@ -14,54 +14,54 @@
 block discarded – undo
14 14
  */
15 15
 class Requests extends XoopsObject
16 16
 {
17
-    /**
18
-     * Requests constructor.
19
-     * @param null $fid
20
-     */
21
-    public function __construct($fid = null)
22
-    {
23
-        $this->initVar('rid', \XOBJ_DTYPE_INT, 0, false);
24
-        $this->initVar('aid', \XOBJ_DTYPE_INT, 0, false);
25
-        $this->initVar('artist', \XOBJ_DTYPE_TXTBOX, null, false, 128);
26
-        $this->initVar('album', \XOBJ_DTYPE_TXTBOX, null, false, 128);
27
-        $this->initVar('title', \XOBJ_DTYPE_TXTBOX, null, false, 128);
28
-        $this->initVar('lyrics', \XOBJ_DTYPE_OTHER, null, false);
29
-        $this->initVar('uid', \XOBJ_DTYPE_INT, 0, false);
30
-        $this->initVar('name', \XOBJ_DTYPE_TXTBOX, null, false, 128);
31
-        $this->initVar('email', \XOBJ_DTYPE_TXTBOX, null, false, 255);
32
-        $this->initVar('songid', \XOBJ_DTYPE_TXTBOX, null, false, 32);
33
-        $this->initVar('sid', \XOBJ_DTYPE_INT, 0, false);
34
-        $this->initVar('created', \XOBJ_DTYPE_INT, 0, false);
35
-        $this->initVar('updated', \XOBJ_DTYPE_INT, 0, false);
36
-    }
17
+	/**
18
+	 * Requests constructor.
19
+	 * @param null $fid
20
+	 */
21
+	public function __construct($fid = null)
22
+	{
23
+		$this->initVar('rid', \XOBJ_DTYPE_INT, 0, false);
24
+		$this->initVar('aid', \XOBJ_DTYPE_INT, 0, false);
25
+		$this->initVar('artist', \XOBJ_DTYPE_TXTBOX, null, false, 128);
26
+		$this->initVar('album', \XOBJ_DTYPE_TXTBOX, null, false, 128);
27
+		$this->initVar('title', \XOBJ_DTYPE_TXTBOX, null, false, 128);
28
+		$this->initVar('lyrics', \XOBJ_DTYPE_OTHER, null, false);
29
+		$this->initVar('uid', \XOBJ_DTYPE_INT, 0, false);
30
+		$this->initVar('name', \XOBJ_DTYPE_TXTBOX, null, false, 128);
31
+		$this->initVar('email', \XOBJ_DTYPE_TXTBOX, null, false, 255);
32
+		$this->initVar('songid', \XOBJ_DTYPE_TXTBOX, null, false, 32);
33
+		$this->initVar('sid', \XOBJ_DTYPE_INT, 0, false);
34
+		$this->initVar('created', \XOBJ_DTYPE_INT, 0, false);
35
+		$this->initVar('updated', \XOBJ_DTYPE_INT, 0, false);
36
+	}
37 37
 
38
-    /**
39
-     * @param bool $as_array
40
-     * @return array|string
41
-     */
42
-    public function getForm($as_array = false)
43
-    {
44
-        return FormController::getFormRequests($this, $as_array);
45
-    }
38
+	/**
39
+	 * @param bool $as_array
40
+	 * @return array|string
41
+	 */
42
+	public function getForm($as_array = false)
43
+	{
44
+		return FormController::getFormRequests($this, $as_array);
45
+	}
46 46
 
47
-    /**
48
-     * @return array
49
-     */
50
-    public function toArray(): array
51
-    {
52
-        $ret            = parent::toArray();
53
-        $form           = $this->getForm(true);
54
-        $form['songid'] = new XoopsFormText('', $this->getVar('rid') . '[songid]', 11, 32);
55
-        foreach ($form as $key => $element) {
56
-            $ret['form'][$key] = $element->render();
57
-        }
58
-        foreach (['created', 'updated'] as $key) {
59
-            if ($this->getVar($key) > 0) {
60
-                $ret['form'][$key] = \date(_DATESTRING, $this->getVar($key));
61
-                $ret[$key]         = \date(_DATESTRING, $this->getVar($key));
62
-            }
63
-        }
47
+	/**
48
+	 * @return array
49
+	 */
50
+	public function toArray(): array
51
+	{
52
+		$ret            = parent::toArray();
53
+		$form           = $this->getForm(true);
54
+		$form['songid'] = new XoopsFormText('', $this->getVar('rid') . '[songid]', 11, 32);
55
+		foreach ($form as $key => $element) {
56
+			$ret['form'][$key] = $element->render();
57
+		}
58
+		foreach (['created', 'updated'] as $key) {
59
+			if ($this->getVar($key) > 0) {
60
+				$ret['form'][$key] = \date(_DATESTRING, $this->getVar($key));
61
+				$ret[$key]         = \date(_DATESTRING, $this->getVar($key));
62
+			}
63
+		}
64 64
 
65
-        return $ret;
66
-    }
65
+		return $ret;
66
+	}
67 67
 }
Please login to merge, or discard this patch.
Spacing   +3 added lines, -3 removed lines patch added patch discarded remove patch
@@ -5,7 +5,7 @@  discard block
 block discarded – undo
5 5
 use XoopsFormText;
6 6
 use XoopsObject;
7 7
 
8
-require_once \dirname(__DIR__) . '/include/songlist.object.php';
8
+require_once \dirname(__DIR__).'/include/songlist.object.php';
9 9
 // require_once \dirname(__DIR__) . '/include/songlist.form.php';
10 10
 use  XoopsModules\Songlist\Form\FormController;
11 11
 
@@ -51,12 +51,12 @@  discard block
 block discarded – undo
51 51
     {
52 52
         $ret            = parent::toArray();
53 53
         $form           = $this->getForm(true);
54
-        $form['songid'] = new XoopsFormText('', $this->getVar('rid') . '[songid]', 11, 32);
54
+        $form['songid'] = new XoopsFormText('', $this->getVar('rid').'[songid]', 11, 32);
55 55
         foreach ($form as $key => $element) {
56 56
             $ret['form'][$key] = $element->render();
57 57
         }
58 58
         foreach (['created', 'updated'] as $key) {
59
-            if ($this->getVar($key) > 0) {
59
+            if ($this->getVar($key)>0) {
60 60
                 $ret['form'][$key] = \date(_DATESTRING, $this->getVar($key));
61 61
                 $ret[$key]         = \date(_DATESTRING, $this->getVar($key));
62 62
             }
Please login to merge, or discard this patch.
class/Category.php 2 patches
Indentation   +83 added lines, -83 removed lines patch added patch discarded remove patch
@@ -9,94 +9,94 @@
 block discarded – undo
9 9
  */
10 10
 class Category extends \XoopsObject
11 11
 {
12
-    /**
13
-     * Category constructor.
14
-     * @param null $fid
15
-     */
16
-    public function __construct($fid = null)
17
-    {
18
-        $this->initVar('cid', \XOBJ_DTYPE_INT, 0, false);
19
-        $this->initVar('pid', \XOBJ_DTYPE_INT, 0, false);
20
-        $this->initVar('weight', \XOBJ_DTYPE_INT, 1, false);
21
-        $this->initVar('name', \XOBJ_DTYPE_TXTBOX, null, false, 128);
22
-        $this->initVar('description', \XOBJ_DTYPE_OTHER, null, false);
23
-        $this->initVar('image', \XOBJ_DTYPE_TXTBOX, null, false, 128);
24
-        $this->initVar('path', \XOBJ_DTYPE_TXTBOX, null, false, 128);
25
-        $this->initVar('artists', \XOBJ_DTYPE_INT, 0, false);
26
-        $this->initVar('albums', \XOBJ_DTYPE_INT, 0, false);
27
-        $this->initVar('songs', \XOBJ_DTYPE_INT, 0, false);
28
-        $this->initVar('hits', \XOBJ_DTYPE_INT, 0, false);
29
-        $this->initVar('rank', \XOBJ_DTYPE_DECIMAL, 0, false);
30
-        $this->initVar('votes', \XOBJ_DTYPE_INT, 0, false);
31
-        $this->initVar('created', \XOBJ_DTYPE_INT, 0, false);
32
-        $this->initVar('updated', \XOBJ_DTYPE_INT, 0, false);
33
-    }
12
+	/**
13
+	 * Category constructor.
14
+	 * @param null $fid
15
+	 */
16
+	public function __construct($fid = null)
17
+	{
18
+		$this->initVar('cid', \XOBJ_DTYPE_INT, 0, false);
19
+		$this->initVar('pid', \XOBJ_DTYPE_INT, 0, false);
20
+		$this->initVar('weight', \XOBJ_DTYPE_INT, 1, false);
21
+		$this->initVar('name', \XOBJ_DTYPE_TXTBOX, null, false, 128);
22
+		$this->initVar('description', \XOBJ_DTYPE_OTHER, null, false);
23
+		$this->initVar('image', \XOBJ_DTYPE_TXTBOX, null, false, 128);
24
+		$this->initVar('path', \XOBJ_DTYPE_TXTBOX, null, false, 128);
25
+		$this->initVar('artists', \XOBJ_DTYPE_INT, 0, false);
26
+		$this->initVar('albums', \XOBJ_DTYPE_INT, 0, false);
27
+		$this->initVar('songs', \XOBJ_DTYPE_INT, 0, false);
28
+		$this->initVar('hits', \XOBJ_DTYPE_INT, 0, false);
29
+		$this->initVar('rank', \XOBJ_DTYPE_DECIMAL, 0, false);
30
+		$this->initVar('votes', \XOBJ_DTYPE_INT, 0, false);
31
+		$this->initVar('created', \XOBJ_DTYPE_INT, 0, false);
32
+		$this->initVar('updated', \XOBJ_DTYPE_INT, 0, false);
33
+	}
34 34
 
35
-    /**
36
-     * @param bool $as_array
37
-     * @return array|string
38
-     */
39
-    public function getForm($as_array = false)
40
-    {
41
-        return FormController::getFormCategory($this, $as_array);
42
-    }
35
+	/**
36
+	 * @param bool $as_array
37
+	 * @return array|string
38
+	 */
39
+	public function getForm($as_array = false)
40
+	{
41
+		return FormController::getFormCategory($this, $as_array);
42
+	}
43 43
 
44
-    /**
45
-     * @return array
46
-     */
47
-    public function toArray(): array
48
-    {
49
-        $ret  = parent::toArray();
50
-        $form = $this->getForm(true);
51
-        foreach ($form as $key => $element) {
52
-            $ret['form'][$key] = $element->render();
53
-        }
54
-        foreach (['created', 'updated'] as $key) {
55
-            if ($this->getVar($key) > 0) {
56
-                $ret['form'][$key] = \date(_DATESTRING, $this->getVar($key));
57
-                $ret[$key]         = \date(_DATESTRING, $this->getVar($key));
58
-            }
59
-        }
60
-        $ret['picture']  = $this->getImage('image', false);
61
-        $ret['rank']     = \number_format(($this->getVar('rank') > 0 && $this->getVar('votes') > 0 ? $this->getVar('rank') / $this->getVar('votes') : 0), 2) . \_MI_SONGLIST_OFTEN;
62
-        $ret['url']      = $this->getURL();
63
-        $categoryHandler = \XoopsModules\Songlist\Helper::getInstance()->getHandler('Category');
64
-        if ($categoryHandler->getCount(new \Criteria('pid', $this->getVar('cid')))) {
65
-            foreach ($categoryHandler->getObjects(new \Criteria('pid', $this->getVar('cid')), true) as $cid => $cat) {
66
-                $ret['subcategories'][$cid] = $cat->toArray();
67
-            }
68
-        }
44
+	/**
45
+	 * @return array
46
+	 */
47
+	public function toArray(): array
48
+	{
49
+		$ret  = parent::toArray();
50
+		$form = $this->getForm(true);
51
+		foreach ($form as $key => $element) {
52
+			$ret['form'][$key] = $element->render();
53
+		}
54
+		foreach (['created', 'updated'] as $key) {
55
+			if ($this->getVar($key) > 0) {
56
+				$ret['form'][$key] = \date(_DATESTRING, $this->getVar($key));
57
+				$ret[$key]         = \date(_DATESTRING, $this->getVar($key));
58
+			}
59
+		}
60
+		$ret['picture']  = $this->getImage('image', false);
61
+		$ret['rank']     = \number_format(($this->getVar('rank') > 0 && $this->getVar('votes') > 0 ? $this->getVar('rank') / $this->getVar('votes') : 0), 2) . \_MI_SONGLIST_OFTEN;
62
+		$ret['url']      = $this->getURL();
63
+		$categoryHandler = \XoopsModules\Songlist\Helper::getInstance()->getHandler('Category');
64
+		if ($categoryHandler->getCount(new \Criteria('pid', $this->getVar('cid')))) {
65
+			foreach ($categoryHandler->getObjects(new \Criteria('pid', $this->getVar('cid')), true) as $cid => $cat) {
66
+				$ret['subcategories'][$cid] = $cat->toArray();
67
+			}
68
+		}
69 69
 
70
-        return $ret;
71
-    }
70
+		return $ret;
71
+	}
72 72
 
73
-    /**
74
-     * @param string $field
75
-     * @param bool   $local
76
-     * @return bool|string
77
-     */
78
-    public function getImage($field = 'image', $local = false)
79
-    {
80
-        if ('' == $this->getVar($field)) {
81
-            return false;
82
-        }
83
-        if (!\file_exists($GLOBALS['xoops']->path($this->getVar('path') . $this->getVar($field)))) {
84
-            return false;
85
-        }
86
-        if (!$local) {
87
-            return XOOPS_URL . '/' . \str_replace(DS, '/', $this->getVar('path')) . $this->getVar($field);
88
-        }
73
+	/**
74
+	 * @param string $field
75
+	 * @param bool   $local
76
+	 * @return bool|string
77
+	 */
78
+	public function getImage($field = 'image', $local = false)
79
+	{
80
+		if ('' == $this->getVar($field)) {
81
+			return false;
82
+		}
83
+		if (!\file_exists($GLOBALS['xoops']->path($this->getVar('path') . $this->getVar($field)))) {
84
+			return false;
85
+		}
86
+		if (!$local) {
87
+			return XOOPS_URL . '/' . \str_replace(DS, '/', $this->getVar('path')) . $this->getVar($field);
88
+		}
89 89
 
90
-        return XOOPS_ROOT_PATH . DS . $this->getVar('path') . $this->getVar($field);
91
-    }
90
+		return XOOPS_ROOT_PATH . DS . $this->getVar('path') . $this->getVar($field);
91
+	}
92 92
 
93
-    /**
94
-     * @return string
95
-     */
96
-    public function getURL(): string
97
-    {
98
-        global $file, $op, $fct, $id, $value, $gid, $cid, $start, $limit;
93
+	/**
94
+	 * @return string
95
+	 */
96
+	public function getURL(): string
97
+	{
98
+		global $file, $op, $fct, $id, $value, $gid, $cid, $start, $limit;
99 99
 
100
-        return XOOPS_URL . '/modules/songlist/' . $file . '.php?op=category&fct=set&id=' . $this->getVar('cid') . '&value=' . \urlencode($file??'') . '&gid=' . $gid . '&cid=' . $cid;
101
-    }
100
+		return XOOPS_URL . '/modules/songlist/' . $file . '.php?op=category&fct=set&id=' . $this->getVar('cid') . '&value=' . \urlencode($file??'') . '&gid=' . $gid . '&cid=' . $cid;
101
+	}
102 102
 }
Please login to merge, or discard this patch.
Spacing   +7 added lines, -7 removed lines patch added patch discarded remove patch
@@ -52,13 +52,13 @@  discard block
 block discarded – undo
52 52
             $ret['form'][$key] = $element->render();
53 53
         }
54 54
         foreach (['created', 'updated'] as $key) {
55
-            if ($this->getVar($key) > 0) {
55
+            if ($this->getVar($key)>0) {
56 56
                 $ret['form'][$key] = \date(_DATESTRING, $this->getVar($key));
57 57
                 $ret[$key]         = \date(_DATESTRING, $this->getVar($key));
58 58
             }
59 59
         }
60 60
         $ret['picture']  = $this->getImage('image', false);
61
-        $ret['rank']     = \number_format(($this->getVar('rank') > 0 && $this->getVar('votes') > 0 ? $this->getVar('rank') / $this->getVar('votes') : 0), 2) . \_MI_SONGLIST_OFTEN;
61
+        $ret['rank']     = \number_format(($this->getVar('rank')>0 && $this->getVar('votes')>0 ? $this->getVar('rank')/$this->getVar('votes') : 0), 2).\_MI_SONGLIST_OFTEN;
62 62
         $ret['url']      = $this->getURL();
63 63
         $categoryHandler = \XoopsModules\Songlist\Helper::getInstance()->getHandler('Category');
64 64
         if ($categoryHandler->getCount(new \Criteria('pid', $this->getVar('cid')))) {
@@ -77,17 +77,17 @@  discard block
 block discarded – undo
77 77
      */
78 78
     public function getImage($field = 'image', $local = false)
79 79
     {
80
-        if ('' == $this->getVar($field)) {
80
+        if (''==$this->getVar($field)) {
81 81
             return false;
82 82
         }
83
-        if (!\file_exists($GLOBALS['xoops']->path($this->getVar('path') . $this->getVar($field)))) {
83
+        if (!\file_exists($GLOBALS['xoops']->path($this->getVar('path').$this->getVar($field)))) {
84 84
             return false;
85 85
         }
86 86
         if (!$local) {
87
-            return XOOPS_URL . '/' . \str_replace(DS, '/', $this->getVar('path')) . $this->getVar($field);
87
+            return XOOPS_URL.'/'.\str_replace(DS, '/', $this->getVar('path')).$this->getVar($field);
88 88
         }
89 89
 
90
-        return XOOPS_ROOT_PATH . DS . $this->getVar('path') . $this->getVar($field);
90
+        return XOOPS_ROOT_PATH.DS.$this->getVar('path').$this->getVar($field);
91 91
     }
92 92
 
93 93
     /**
@@ -97,6 +97,6 @@  discard block
 block discarded – undo
97 97
     {
98 98
         global $file, $op, $fct, $id, $value, $gid, $cid, $start, $limit;
99 99
 
100
-        return XOOPS_URL . '/modules/songlist/' . $file . '.php?op=category&fct=set&id=' . $this->getVar('cid') . '&value=' . \urlencode($file??'') . '&gid=' . $gid . '&cid=' . $cid;
100
+        return XOOPS_URL.'/modules/songlist/'.$file.'.php?op=category&fct=set&id='.$this->getVar('cid').'&value='.\urlencode($file ?? '').'&gid='.$gid.'&cid='.$cid;
101 101
     }
102 102
 }
Please login to merge, or discard this patch.
class/Songs.php 2 patches
Indentation   +165 added lines, -165 removed lines patch added patch discarded remove patch
@@ -15,169 +15,169 @@
 block discarded – undo
15 15
  */
16 16
 class Songs extends XoopsObject
17 17
 {
18
-    /**
19
-     * Songs constructor.
20
-     * @param null $fid
21
-     */
22
-    public function __construct($fid = null)
23
-    {
24
-        $this->initVar('sid', \XOBJ_DTYPE_INT, 0, false);
25
-        $this->initVar('cid', \XOBJ_DTYPE_INT, 0, false);
26
-        $this->initVar('gids', \XOBJ_DTYPE_ARRAY, 0, false);
27
-        $this->initVar('vcid', \XOBJ_DTYPE_INT, 0, false);
28
-        $this->initVar('aids', \XOBJ_DTYPE_ARRAY, [], false);
29
-        $this->initVar('abid', \XOBJ_DTYPE_INT, 0, false);
30
-        $this->initVar('songid', \XOBJ_DTYPE_TXTBOX, null, false, 32);
31
-        $this->initVar('traxid', \XOBJ_DTYPE_TXTBOX, null, false, 32);
32
-        $this->initVar('title', \XOBJ_DTYPE_TXTBOX, null, false, 128);
33
-        $this->initVar('lyrics', \XOBJ_DTYPE_OTHER, null, false);
34
-        $this->initVar('hits', \XOBJ_DTYPE_INT, 0, false);
35
-        $this->initVar('rank', \XOBJ_DTYPE_DECIMAL, 0, false);
36
-        $this->initVar('votes', \XOBJ_DTYPE_INT, 0, false);
37
-        $this->initVar('tags', \XOBJ_DTYPE_TXTBOX, null, false, 255);
38
-        $this->initVar('mp3', \XOBJ_DTYPE_OTHER, null, false, 500);
39
-        $this->initVar('created', \XOBJ_DTYPE_INT, 0, false);
40
-        $this->initVar('updated', \XOBJ_DTYPE_INT, 0, false);
41
-    }
42
-
43
-    /**
44
-     * @param bool $as_array
45
-     * @return array|string
46
-     */
47
-    public function getForm($as_array = false)
48
-    {
49
-        return FormController::getFormSongs($this, $as_array);
50
-    }
51
-
52
-    /**
53
-     * @param bool $extra
54
-     * @return array
55
-     */
56
-    public function toArray($extra = true): array
57
-    {
58
-        $ret = parent::toArray();
59
-
60
-        $GLOBALS['myts'] = MyTextSanitizer::getInstance();
61
-
62
-        $ret['lyrics'] = $GLOBALS['myts']->displayTarea($this->getVar('lyrics'), true, true, true, true, true);
63
-
64
-        $form = $this->getForm(true);
65
-        foreach ($form as $key => $element) {
66
-            $ret['form'][$key] = $element->render();
67
-        }
68
-        foreach (['created', 'updated'] as $key) {
69
-            if ($this->getVar($key) > 0) {
70
-                $ret['form'][$key] = \date(_DATESTRING, $this->getVar($key));
71
-                $ret[$key]         = \date(_DATESTRING, $this->getVar($key));
72
-            }
73
-        }
74
-
75
-        $ret['url'] = $this->getURL();
76
-
77
-        $ret['rank'] = \number_format(($this->getVar('rank') > 0 && $this->getVar('votes') > 0 ? $this->getVar('rank') / $this->getVar('votes') : 0), 2) . \_MI_SONGLIST_OFTEN;
78
-
79
-        if (!empty($ret['mp3'])) {
80
-            $ret['mp3'] = '<embed flashvars="playerID=1&amp;bg=0xf8f8f8&amp;leftbg=0x3786b3&amp;lefticon=0x78bee3&amp;rightbg=0x3786b3&amp;rightbghover=0x78bee3&amp;righticon=0x78bee3&amp;righticonhover=0x3786b3&amp;text=0x666666&amp;slider=0x3786b3&amp;track=0xcccccc&amp;border=0x666666&amp;loader=0x78bee3&amp;loop=no&amp;soundFile='
81
-                          . $ret['mp3']
82
-                          . "\" quality='high' menu='false' wmode='transparent' pluginspage='https://www.macromedia.com/go/getflashplayer' src='"
83
-                          . XOOPS_URL
84
-                          . "/images/form/player.swf'  width=290 height=24 type='application/x-shockwave-flash'></embed>";
85
-        }
86
-
87
-        $helper = Helper::getInstance();
88
-        if (1 == $helper->getConfig('tags')
89
-            && \class_exists(\XoopsModules\Tag\Tagbar::class)
90
-            && \xoops_isActiveModule('tag')) {
91
-            $tagbarObj     = new \XoopsModules\Tag\Tagbar();
92
-            $ret['tagbar'] = $tagbarObj->getTagbar($this->getVar('sid'), $this->getVar('cid'));
93
-        }
94
-
95
-        $extrasHandler     = \XoopsModules\Songlist\Helper::getInstance()->getHandler('Extras');
96
-        $fieldHandler      = \XoopsModules\Songlist\Helper::getInstance()->getHandler('Field');
97
-        $visibilityHandler = \XoopsModules\Songlist\Helper::getInstance()->getHandler('Visibility');
98
-
99
-        $extras = $extrasHandler->get($this->getVar('sid'));
100
-        if ($extras) {
101
-            if (\is_object($GLOBALS['xoopsUser'])) {
102
-                $fields_id = $visibilityHandler->getVisibleFields([], $GLOBALS['xoopsUser']->getGroups());
103
-            } elseif (!\is_object($GLOBALS['xoopsUser'])) {
104
-                $fields_id = $visibilityHandler->getVisibleFields([], []);
105
-            }
106
-
107
-            if (\count($fields_id) > 0) {
108
-                $criteria = new Criteria('field_id', '(' . \implode(',', $fields_id) . ')', 'IN');
109
-                $criteria->setSort('field_weight');
110
-                $fields = $fieldHandler->getObjects($criteria, true);
111
-                foreach ($fields as $id => $field) {
112
-                    if (\in_array($this->getVar('cid'), $field->getVar('cids'), true)) {
113
-                        $ret['fields'][$id]['title'] = $field->getVar('field_title');
114
-                        if (\is_object($GLOBALS['xoopsUser'])) {
115
-                            $ret['fields'][$id]['value'] = htmlspecialchars_decode($field->getOutputValue($GLOBALS['xoopsUser'], $extras));
116
-                        } elseif (!\is_object($GLOBALS['xoopsUser'])) {
117
-                            $ret['fields'][$id]['value'] = htmlspecialchars_decode($extras->getVar($field->getVar('field_name')));
118
-                        }
119
-                    }
120
-                }
121
-            }
122
-        }
123
-
124
-        if (!$extra) {
125
-            return $ret;
126
-        }
127
-
128
-        if (0 != $this->getVar('cid')) {
129
-            $categoryHandler = \XoopsModules\Songlist\Helper::getInstance()->getHandler('Category');
130
-            $category        = $categoryHandler->get($this->getVar('cid'));
131
-            $ret['category'] = $category->toArray(false);
132
-        }
133
-
134
-        if (0 != \count($this->getVar('gids'))) {
135
-            $i            = 0;
136
-            $genreHandler = \XoopsModules\Songlist\Helper::getInstance()->getHandler('Genre');
137
-            $ret['genre'] = '';
138
-            $genres       = $genreHandler->getObjects(new Criteria('gid', '(' . \implode(',', $this->getVar('gids')) . ')', 'IN'), true);
139
-            foreach ($genres as $gid => $genre) {
140
-                $ret['genre_array'][$gid] = $genre->toArray(false);
141
-                ++$i;
142
-                $ret['genre'] .= $genre->getVar('name') . ($i < \count($genres) ? ', ' : '');
143
-            }
144
-        }
145
-        if (0 != $this->getVar('vcid')) {
146
-            $voiceHandler = \XoopsModules\Songlist\Helper::getInstance()->getHandler('Voice');
147
-            $voice        = $voiceHandler->get($this->getVar('vcid'));
148
-            $ret['voice'] = $voice->toArray(false);
149
-        }
150
-
151
-        if (0 != \count($this->getVar('aids'))) {
152
-            $artistsHandler = \XoopsModules\Songlist\Helper::getInstance()->getHandler('Artists');
153
-            foreach ($this->getVar('aids') as $aid) {
154
-                $artist                     = $artistsHandler->get($aid);
155
-                $ret['artists_array'][$aid] = $artist->toArray(false);
156
-            }
157
-        }
158
-
159
-        if (0 != $this->getVar('abid')) {
160
-            $albumsHandler = \XoopsModules\Songlist\Helper::getInstance()->getHandler('Albums');
161
-            $albums        = $albumsHandler->get($this->getVar('abid'));
162
-            if (null !== $albums) {
163
-                $ret['albums'] = $albums->toArray(false);
164
-            }
165
-
166
-        }
167
-
168
-        return $ret;
169
-    }
170
-
171
-    /**
172
-     * @return string
173
-     */
174
-    public function getURL(): string
175
-    {
176
-        global $file, $op, $fct, $id, $value, $vcid, $gid, $cid, $start, $limit;
177
-        if ($GLOBALS['songlistModuleConfig']['htaccess']) {
178
-            return XOOPS_URL . '/' . $GLOBALS['songlistModuleConfig']['baseofurl'] . '/index/' . \urlencode(\str_replace([' ', \chr(9)], '-', $this->getVar('title'))) . '/item-item-' . $this->getVar('sid') . $GLOBALS['songlistModuleConfig']['endofurl'];
179
-        }
180
-
181
-        return XOOPS_URL . '/modules/songlist/index.php?op=item&fct=item&id=' . $this->getVar('sid') . '&value=' . \urlencode($value ?? '') . '&vcid=' . $vcid . '&gid=' . $gid . '&cid=' . $cid;
182
-    }
18
+	/**
19
+	 * Songs constructor.
20
+	 * @param null $fid
21
+	 */
22
+	public function __construct($fid = null)
23
+	{
24
+		$this->initVar('sid', \XOBJ_DTYPE_INT, 0, false);
25
+		$this->initVar('cid', \XOBJ_DTYPE_INT, 0, false);
26
+		$this->initVar('gids', \XOBJ_DTYPE_ARRAY, 0, false);
27
+		$this->initVar('vcid', \XOBJ_DTYPE_INT, 0, false);
28
+		$this->initVar('aids', \XOBJ_DTYPE_ARRAY, [], false);
29
+		$this->initVar('abid', \XOBJ_DTYPE_INT, 0, false);
30
+		$this->initVar('songid', \XOBJ_DTYPE_TXTBOX, null, false, 32);
31
+		$this->initVar('traxid', \XOBJ_DTYPE_TXTBOX, null, false, 32);
32
+		$this->initVar('title', \XOBJ_DTYPE_TXTBOX, null, false, 128);
33
+		$this->initVar('lyrics', \XOBJ_DTYPE_OTHER, null, false);
34
+		$this->initVar('hits', \XOBJ_DTYPE_INT, 0, false);
35
+		$this->initVar('rank', \XOBJ_DTYPE_DECIMAL, 0, false);
36
+		$this->initVar('votes', \XOBJ_DTYPE_INT, 0, false);
37
+		$this->initVar('tags', \XOBJ_DTYPE_TXTBOX, null, false, 255);
38
+		$this->initVar('mp3', \XOBJ_DTYPE_OTHER, null, false, 500);
39
+		$this->initVar('created', \XOBJ_DTYPE_INT, 0, false);
40
+		$this->initVar('updated', \XOBJ_DTYPE_INT, 0, false);
41
+	}
42
+
43
+	/**
44
+	 * @param bool $as_array
45
+	 * @return array|string
46
+	 */
47
+	public function getForm($as_array = false)
48
+	{
49
+		return FormController::getFormSongs($this, $as_array);
50
+	}
51
+
52
+	/**
53
+	 * @param bool $extra
54
+	 * @return array
55
+	 */
56
+	public function toArray($extra = true): array
57
+	{
58
+		$ret = parent::toArray();
59
+
60
+		$GLOBALS['myts'] = MyTextSanitizer::getInstance();
61
+
62
+		$ret['lyrics'] = $GLOBALS['myts']->displayTarea($this->getVar('lyrics'), true, true, true, true, true);
63
+
64
+		$form = $this->getForm(true);
65
+		foreach ($form as $key => $element) {
66
+			$ret['form'][$key] = $element->render();
67
+		}
68
+		foreach (['created', 'updated'] as $key) {
69
+			if ($this->getVar($key) > 0) {
70
+				$ret['form'][$key] = \date(_DATESTRING, $this->getVar($key));
71
+				$ret[$key]         = \date(_DATESTRING, $this->getVar($key));
72
+			}
73
+		}
74
+
75
+		$ret['url'] = $this->getURL();
76
+
77
+		$ret['rank'] = \number_format(($this->getVar('rank') > 0 && $this->getVar('votes') > 0 ? $this->getVar('rank') / $this->getVar('votes') : 0), 2) . \_MI_SONGLIST_OFTEN;
78
+
79
+		if (!empty($ret['mp3'])) {
80
+			$ret['mp3'] = '<embed flashvars="playerID=1&amp;bg=0xf8f8f8&amp;leftbg=0x3786b3&amp;lefticon=0x78bee3&amp;rightbg=0x3786b3&amp;rightbghover=0x78bee3&amp;righticon=0x78bee3&amp;righticonhover=0x3786b3&amp;text=0x666666&amp;slider=0x3786b3&amp;track=0xcccccc&amp;border=0x666666&amp;loader=0x78bee3&amp;loop=no&amp;soundFile='
81
+						  . $ret['mp3']
82
+						  . "\" quality='high' menu='false' wmode='transparent' pluginspage='https://www.macromedia.com/go/getflashplayer' src='"
83
+						  . XOOPS_URL
84
+						  . "/images/form/player.swf'  width=290 height=24 type='application/x-shockwave-flash'></embed>";
85
+		}
86
+
87
+		$helper = Helper::getInstance();
88
+		if (1 == $helper->getConfig('tags')
89
+			&& \class_exists(\XoopsModules\Tag\Tagbar::class)
90
+			&& \xoops_isActiveModule('tag')) {
91
+			$tagbarObj     = new \XoopsModules\Tag\Tagbar();
92
+			$ret['tagbar'] = $tagbarObj->getTagbar($this->getVar('sid'), $this->getVar('cid'));
93
+		}
94
+
95
+		$extrasHandler     = \XoopsModules\Songlist\Helper::getInstance()->getHandler('Extras');
96
+		$fieldHandler      = \XoopsModules\Songlist\Helper::getInstance()->getHandler('Field');
97
+		$visibilityHandler = \XoopsModules\Songlist\Helper::getInstance()->getHandler('Visibility');
98
+
99
+		$extras = $extrasHandler->get($this->getVar('sid'));
100
+		if ($extras) {
101
+			if (\is_object($GLOBALS['xoopsUser'])) {
102
+				$fields_id = $visibilityHandler->getVisibleFields([], $GLOBALS['xoopsUser']->getGroups());
103
+			} elseif (!\is_object($GLOBALS['xoopsUser'])) {
104
+				$fields_id = $visibilityHandler->getVisibleFields([], []);
105
+			}
106
+
107
+			if (\count($fields_id) > 0) {
108
+				$criteria = new Criteria('field_id', '(' . \implode(',', $fields_id) . ')', 'IN');
109
+				$criteria->setSort('field_weight');
110
+				$fields = $fieldHandler->getObjects($criteria, true);
111
+				foreach ($fields as $id => $field) {
112
+					if (\in_array($this->getVar('cid'), $field->getVar('cids'), true)) {
113
+						$ret['fields'][$id]['title'] = $field->getVar('field_title');
114
+						if (\is_object($GLOBALS['xoopsUser'])) {
115
+							$ret['fields'][$id]['value'] = htmlspecialchars_decode($field->getOutputValue($GLOBALS['xoopsUser'], $extras));
116
+						} elseif (!\is_object($GLOBALS['xoopsUser'])) {
117
+							$ret['fields'][$id]['value'] = htmlspecialchars_decode($extras->getVar($field->getVar('field_name')));
118
+						}
119
+					}
120
+				}
121
+			}
122
+		}
123
+
124
+		if (!$extra) {
125
+			return $ret;
126
+		}
127
+
128
+		if (0 != $this->getVar('cid')) {
129
+			$categoryHandler = \XoopsModules\Songlist\Helper::getInstance()->getHandler('Category');
130
+			$category        = $categoryHandler->get($this->getVar('cid'));
131
+			$ret['category'] = $category->toArray(false);
132
+		}
133
+
134
+		if (0 != \count($this->getVar('gids'))) {
135
+			$i            = 0;
136
+			$genreHandler = \XoopsModules\Songlist\Helper::getInstance()->getHandler('Genre');
137
+			$ret['genre'] = '';
138
+			$genres       = $genreHandler->getObjects(new Criteria('gid', '(' . \implode(',', $this->getVar('gids')) . ')', 'IN'), true);
139
+			foreach ($genres as $gid => $genre) {
140
+				$ret['genre_array'][$gid] = $genre->toArray(false);
141
+				++$i;
142
+				$ret['genre'] .= $genre->getVar('name') . ($i < \count($genres) ? ', ' : '');
143
+			}
144
+		}
145
+		if (0 != $this->getVar('vcid')) {
146
+			$voiceHandler = \XoopsModules\Songlist\Helper::getInstance()->getHandler('Voice');
147
+			$voice        = $voiceHandler->get($this->getVar('vcid'));
148
+			$ret['voice'] = $voice->toArray(false);
149
+		}
150
+
151
+		if (0 != \count($this->getVar('aids'))) {
152
+			$artistsHandler = \XoopsModules\Songlist\Helper::getInstance()->getHandler('Artists');
153
+			foreach ($this->getVar('aids') as $aid) {
154
+				$artist                     = $artistsHandler->get($aid);
155
+				$ret['artists_array'][$aid] = $artist->toArray(false);
156
+			}
157
+		}
158
+
159
+		if (0 != $this->getVar('abid')) {
160
+			$albumsHandler = \XoopsModules\Songlist\Helper::getInstance()->getHandler('Albums');
161
+			$albums        = $albumsHandler->get($this->getVar('abid'));
162
+			if (null !== $albums) {
163
+				$ret['albums'] = $albums->toArray(false);
164
+			}
165
+
166
+		}
167
+
168
+		return $ret;
169
+	}
170
+
171
+	/**
172
+	 * @return string
173
+	 */
174
+	public function getURL(): string
175
+	{
176
+		global $file, $op, $fct, $id, $value, $vcid, $gid, $cid, $start, $limit;
177
+		if ($GLOBALS['songlistModuleConfig']['htaccess']) {
178
+			return XOOPS_URL . '/' . $GLOBALS['songlistModuleConfig']['baseofurl'] . '/index/' . \urlencode(\str_replace([' ', \chr(9)], '-', $this->getVar('title'))) . '/item-item-' . $this->getVar('sid') . $GLOBALS['songlistModuleConfig']['endofurl'];
179
+		}
180
+
181
+		return XOOPS_URL . '/modules/songlist/index.php?op=item&fct=item&id=' . $this->getVar('sid') . '&value=' . \urlencode($value ?? '') . '&vcid=' . $vcid . '&gid=' . $gid . '&cid=' . $cid;
182
+	}
183 183
 }
Please login to merge, or discard this patch.
Spacing   +16 added lines, -16 removed lines patch added patch discarded remove patch
@@ -6,7 +6,7 @@  discard block
 block discarded – undo
6 6
 use MyTextSanitizer;
7 7
 use XoopsObject;
8 8
 
9
-require_once \dirname(__DIR__) . '/include/songlist.object.php';
9
+require_once \dirname(__DIR__).'/include/songlist.object.php';
10 10
 // require_once \dirname(__DIR__) . '/include/songlist.form.php';
11 11
 use  XoopsModules\Songlist\Form\FormController;
12 12
 
@@ -66,7 +66,7 @@  discard block
 block discarded – undo
66 66
             $ret['form'][$key] = $element->render();
67 67
         }
68 68
         foreach (['created', 'updated'] as $key) {
69
-            if ($this->getVar($key) > 0) {
69
+            if ($this->getVar($key)>0) {
70 70
                 $ret['form'][$key] = \date(_DATESTRING, $this->getVar($key));
71 71
                 $ret[$key]         = \date(_DATESTRING, $this->getVar($key));
72 72
             }
@@ -74,7 +74,7 @@  discard block
 block discarded – undo
74 74
 
75 75
         $ret['url'] = $this->getURL();
76 76
 
77
-        $ret['rank'] = \number_format(($this->getVar('rank') > 0 && $this->getVar('votes') > 0 ? $this->getVar('rank') / $this->getVar('votes') : 0), 2) . \_MI_SONGLIST_OFTEN;
77
+        $ret['rank'] = \number_format(($this->getVar('rank')>0 && $this->getVar('votes')>0 ? $this->getVar('rank')/$this->getVar('votes') : 0), 2).\_MI_SONGLIST_OFTEN;
78 78
 
79 79
         if (!empty($ret['mp3'])) {
80 80
             $ret['mp3'] = '<embed flashvars="playerID=1&amp;bg=0xf8f8f8&amp;leftbg=0x3786b3&amp;lefticon=0x78bee3&amp;rightbg=0x3786b3&amp;rightbghover=0x78bee3&amp;righticon=0x78bee3&amp;righticonhover=0x3786b3&amp;text=0x666666&amp;slider=0x3786b3&amp;track=0xcccccc&amp;border=0x666666&amp;loader=0x78bee3&amp;loop=no&amp;soundFile='
@@ -85,7 +85,7 @@  discard block
 block discarded – undo
85 85
         }
86 86
 
87 87
         $helper = Helper::getInstance();
88
-        if (1 == $helper->getConfig('tags')
88
+        if (1==$helper->getConfig('tags')
89 89
             && \class_exists(\XoopsModules\Tag\Tagbar::class)
90 90
             && \xoops_isActiveModule('tag')) {
91 91
             $tagbarObj     = new \XoopsModules\Tag\Tagbar();
@@ -104,8 +104,8 @@  discard block
 block discarded – undo
104 104
                 $fields_id = $visibilityHandler->getVisibleFields([], []);
105 105
             }
106 106
 
107
-            if (\count($fields_id) > 0) {
108
-                $criteria = new Criteria('field_id', '(' . \implode(',', $fields_id) . ')', 'IN');
107
+            if (\count($fields_id)>0) {
108
+                $criteria = new Criteria('field_id', '('.\implode(',', $fields_id).')', 'IN');
109 109
                 $criteria->setSort('field_weight');
110 110
                 $fields = $fieldHandler->getObjects($criteria, true);
111 111
                 foreach ($fields as $id => $field) {
@@ -125,30 +125,30 @@  discard block
 block discarded – undo
125 125
             return $ret;
126 126
         }
127 127
 
128
-        if (0 != $this->getVar('cid')) {
128
+        if (0!=$this->getVar('cid')) {
129 129
             $categoryHandler = \XoopsModules\Songlist\Helper::getInstance()->getHandler('Category');
130 130
             $category        = $categoryHandler->get($this->getVar('cid'));
131 131
             $ret['category'] = $category->toArray(false);
132 132
         }
133 133
 
134
-        if (0 != \count($this->getVar('gids'))) {
134
+        if (0!=\count($this->getVar('gids'))) {
135 135
             $i            = 0;
136 136
             $genreHandler = \XoopsModules\Songlist\Helper::getInstance()->getHandler('Genre');
137 137
             $ret['genre'] = '';
138
-            $genres       = $genreHandler->getObjects(new Criteria('gid', '(' . \implode(',', $this->getVar('gids')) . ')', 'IN'), true);
138
+            $genres       = $genreHandler->getObjects(new Criteria('gid', '('.\implode(',', $this->getVar('gids')).')', 'IN'), true);
139 139
             foreach ($genres as $gid => $genre) {
140 140
                 $ret['genre_array'][$gid] = $genre->toArray(false);
141 141
                 ++$i;
142
-                $ret['genre'] .= $genre->getVar('name') . ($i < \count($genres) ? ', ' : '');
142
+                $ret['genre'] .= $genre->getVar('name').($i<\count($genres) ? ', ' : '');
143 143
             }
144 144
         }
145
-        if (0 != $this->getVar('vcid')) {
145
+        if (0!=$this->getVar('vcid')) {
146 146
             $voiceHandler = \XoopsModules\Songlist\Helper::getInstance()->getHandler('Voice');
147 147
             $voice        = $voiceHandler->get($this->getVar('vcid'));
148 148
             $ret['voice'] = $voice->toArray(false);
149 149
         }
150 150
 
151
-        if (0 != \count($this->getVar('aids'))) {
151
+        if (0!=\count($this->getVar('aids'))) {
152 152
             $artistsHandler = \XoopsModules\Songlist\Helper::getInstance()->getHandler('Artists');
153 153
             foreach ($this->getVar('aids') as $aid) {
154 154
                 $artist                     = $artistsHandler->get($aid);
@@ -156,10 +156,10 @@  discard block
 block discarded – undo
156 156
             }
157 157
         }
158 158
 
159
-        if (0 != $this->getVar('abid')) {
159
+        if (0!=$this->getVar('abid')) {
160 160
             $albumsHandler = \XoopsModules\Songlist\Helper::getInstance()->getHandler('Albums');
161 161
             $albums        = $albumsHandler->get($this->getVar('abid'));
162
-            if (null !== $albums) {
162
+            if (null!==$albums) {
163 163
                 $ret['albums'] = $albums->toArray(false);
164 164
             }
165 165
 
@@ -175,9 +175,9 @@  discard block
 block discarded – undo
175 175
     {
176 176
         global $file, $op, $fct, $id, $value, $vcid, $gid, $cid, $start, $limit;
177 177
         if ($GLOBALS['songlistModuleConfig']['htaccess']) {
178
-            return XOOPS_URL . '/' . $GLOBALS['songlistModuleConfig']['baseofurl'] . '/index/' . \urlencode(\str_replace([' ', \chr(9)], '-', $this->getVar('title'))) . '/item-item-' . $this->getVar('sid') . $GLOBALS['songlistModuleConfig']['endofurl'];
178
+            return XOOPS_URL.'/'.$GLOBALS['songlistModuleConfig']['baseofurl'].'/index/'.\urlencode(\str_replace([' ', \chr(9)], '-', $this->getVar('title'))).'/item-item-'.$this->getVar('sid').$GLOBALS['songlistModuleConfig']['endofurl'];
179 179
         }
180 180
 
181
-        return XOOPS_URL . '/modules/songlist/index.php?op=item&fct=item&id=' . $this->getVar('sid') . '&value=' . \urlencode($value ?? '') . '&vcid=' . $vcid . '&gid=' . $gid . '&cid=' . $cid;
181
+        return XOOPS_URL.'/modules/songlist/index.php?op=item&fct=item&id='.$this->getVar('sid').'&value='.\urlencode($value ?? '').'&vcid='.$vcid.'&gid='.$gid.'&cid='.$cid;
182 182
     }
183 183
 }
Please login to merge, or discard this patch.
class/VisibilityHandler.php 2 patches
Indentation   +73 added lines, -73 removed lines patch added patch discarded remove patch
@@ -27,81 +27,81 @@
 block discarded – undo
27 27
  */
28 28
 class VisibilityHandler extends XoopsPersistableObjectHandler
29 29
 {
30
-    /**
31
-     * VisibilityHandler constructor.
32
-     * @param \XoopsDatabase $db
33
-     */
34
-    public function __construct(XoopsDatabase $db)
35
-    {
36
-        parent::__construct($db, 'songlist_visibility', Visibility::class, 'field_id');
37
-    }
30
+	/**
31
+	 * VisibilityHandler constructor.
32
+	 * @param \XoopsDatabase $db
33
+	 */
34
+	public function __construct(XoopsDatabase $db)
35
+	{
36
+		parent::__construct($db, 'songlist_visibility', Visibility::class, 'field_id');
37
+	}
38 38
 
39
-    /**
40
-     * get all objects matching a condition
41
-     *
42
-     * @param \CriteriaElement|null $criteria {@link \CriteriaElement} to match
43
-     * @param null                  $fields
44
-     * @param bool                  $asObject
45
-     * @param bool                  $id_as_key
46
-     * @return array of objects/array <a href='psi_element://XoopsObject'>XoopsObject</a>
47
-     * @internal param array $fields variables to fetch
48
-     * @internal param bool $asObject flag indicating as object, otherwise as array
49
-     * @internal param bool $id_as_key use the ID as key for the array
50
-     */
51
-    public function &getAll(CriteriaElement $criteria = null, $fields = null, $asObject = true, $id_as_key = true): array //getAll($criteria = null)
52
-    {
53
-        $limit            = null;
54
-        $GLOBALS['start'] = null;
55
-        $sql              = "SELECT * FROM `{$this->table}`";
56
-        if (($criteria instanceof \CriteriaCompo) || ($criteria instanceof \Criteria)) {
57
-            $sql     .= ' ' . $criteria->renderWhere();
58
-            $groupby = $criteria->getGroupby();
59
-            if ($groupby) {
60
-                $sql .= ' ' . $groupby;
61
-            }
62
-            $sort = $criteria->getSort();
63
-            if ($sort) {
64
-                $sql      .= " ORDER BY {$sort} " . $criteria->getOrder();
65
-                $orderSet = true;
66
-            }
67
-            $limit            = $criteria->getLimit();
68
-            $GLOBALS['start'] = $criteria->getStart();
69
-        }
70
-        if (empty($orderSet)) {
71
-            $sql .= " ORDER BY `{$this->keyName}` DESC";
72
-        }
73
-        $result = $this->db->query($sql, $limit, $GLOBALS['start']);
74
-        $ret    = [];
75
-        while (false !== ($row = $this->db->fetchArray($result))) {
76
-            $ret[$row['field_id']][] = $row;
77
-        }
39
+	/**
40
+	 * get all objects matching a condition
41
+	 *
42
+	 * @param \CriteriaElement|null $criteria {@link \CriteriaElement} to match
43
+	 * @param null                  $fields
44
+	 * @param bool                  $asObject
45
+	 * @param bool                  $id_as_key
46
+	 * @return array of objects/array <a href='psi_element://XoopsObject'>XoopsObject</a>
47
+	 * @internal param array $fields variables to fetch
48
+	 * @internal param bool $asObject flag indicating as object, otherwise as array
49
+	 * @internal param bool $id_as_key use the ID as key for the array
50
+	 */
51
+	public function &getAll(CriteriaElement $criteria = null, $fields = null, $asObject = true, $id_as_key = true): array //getAll($criteria = null)
52
+	{
53
+		$limit            = null;
54
+		$GLOBALS['start'] = null;
55
+		$sql              = "SELECT * FROM `{$this->table}`";
56
+		if (($criteria instanceof \CriteriaCompo) || ($criteria instanceof \Criteria)) {
57
+			$sql     .= ' ' . $criteria->renderWhere();
58
+			$groupby = $criteria->getGroupby();
59
+			if ($groupby) {
60
+				$sql .= ' ' . $groupby;
61
+			}
62
+			$sort = $criteria->getSort();
63
+			if ($sort) {
64
+				$sql      .= " ORDER BY {$sort} " . $criteria->getOrder();
65
+				$orderSet = true;
66
+			}
67
+			$limit            = $criteria->getLimit();
68
+			$GLOBALS['start'] = $criteria->getStart();
69
+		}
70
+		if (empty($orderSet)) {
71
+			$sql .= " ORDER BY `{$this->keyName}` DESC";
72
+		}
73
+		$result = $this->db->query($sql, $limit, $GLOBALS['start']);
74
+		$ret    = [];
75
+		while (false !== ($row = $this->db->fetchArray($result))) {
76
+			$ret[$row['field_id']][] = $row;
77
+		}
78 78
 
79
-        return $ret;
80
-    }
79
+		return $ret;
80
+	}
81 81
 
82
-    /**
83
-     * Get fields visible to the $user_groups on a $profile_groups profile
84
-     *
85
-     * @param array $profile_groups groups of the user to be accessed
86
-     * @param array $user_groups    groups of the visitor, default as $GLOBALS['xoopsUser']
87
-     *
88
-     * @return array
89
-     */
90
-    public function getVisibleFields($profile_groups, $user_groups = []): array
91
-    {
92
-        $profile_groups[] = '0';
93
-        $user_groups[]    = '0';
94
-        $profile_groups[] = $user_groups[] = 0;
95
-        $sql              = "SELECT field_id FROM {$this->table} WHERE profile_group IN (" . \implode(',', $profile_groups) . ')';
96
-        $sql              .= ' AND user_group IN (' . \implode(',', $user_groups) . ')';
97
-        $field_ids        = [];
98
-        $result           = $this->db->query($sql);
99
-        if ($result) {
100
-            while ([$field_id] = $this->db->fetchRow($result)) {
101
-                $field_ids[] = $field_id;
102
-            }
103
-        }
82
+	/**
83
+	 * Get fields visible to the $user_groups on a $profile_groups profile
84
+	 *
85
+	 * @param array $profile_groups groups of the user to be accessed
86
+	 * @param array $user_groups    groups of the visitor, default as $GLOBALS['xoopsUser']
87
+	 *
88
+	 * @return array
89
+	 */
90
+	public function getVisibleFields($profile_groups, $user_groups = []): array
91
+	{
92
+		$profile_groups[] = '0';
93
+		$user_groups[]    = '0';
94
+		$profile_groups[] = $user_groups[] = 0;
95
+		$sql              = "SELECT field_id FROM {$this->table} WHERE profile_group IN (" . \implode(',', $profile_groups) . ')';
96
+		$sql              .= ' AND user_group IN (' . \implode(',', $user_groups) . ')';
97
+		$field_ids        = [];
98
+		$result           = $this->db->query($sql);
99
+		if ($result) {
100
+			while ([$field_id] = $this->db->fetchRow($result)) {
101
+				$field_ids[] = $field_id;
102
+			}
103
+		}
104 104
 
105
-        return $field_ids;
106
-    }
105
+		return $field_ids;
106
+	}
107 107
 }
Please login to merge, or discard this patch.
Spacing   +6 added lines, -6 removed lines patch added patch discarded remove patch
@@ -54,14 +54,14 @@  discard block
 block discarded – undo
54 54
         $GLOBALS['start'] = null;
55 55
         $sql              = "SELECT * FROM `{$this->table}`";
56 56
         if (($criteria instanceof \CriteriaCompo) || ($criteria instanceof \Criteria)) {
57
-            $sql     .= ' ' . $criteria->renderWhere();
57
+            $sql     .= ' '.$criteria->renderWhere();
58 58
             $groupby = $criteria->getGroupby();
59 59
             if ($groupby) {
60
-                $sql .= ' ' . $groupby;
60
+                $sql .= ' '.$groupby;
61 61
             }
62 62
             $sort = $criteria->getSort();
63 63
             if ($sort) {
64
-                $sql      .= " ORDER BY {$sort} " . $criteria->getOrder();
64
+                $sql .= " ORDER BY {$sort} ".$criteria->getOrder();
65 65
                 $orderSet = true;
66 66
             }
67 67
             $limit            = $criteria->getLimit();
@@ -72,7 +72,7 @@  discard block
 block discarded – undo
72 72
         }
73 73
         $result = $this->db->query($sql, $limit, $GLOBALS['start']);
74 74
         $ret    = [];
75
-        while (false !== ($row = $this->db->fetchArray($result))) {
75
+        while (false!==($row = $this->db->fetchArray($result))) {
76 76
             $ret[$row['field_id']][] = $row;
77 77
         }
78 78
 
@@ -92,8 +92,8 @@  discard block
 block discarded – undo
92 92
         $profile_groups[] = '0';
93 93
         $user_groups[]    = '0';
94 94
         $profile_groups[] = $user_groups[] = 0;
95
-        $sql              = "SELECT field_id FROM {$this->table} WHERE profile_group IN (" . \implode(',', $profile_groups) . ')';
96
-        $sql              .= ' AND user_group IN (' . \implode(',', $user_groups) . ')';
95
+        $sql              = "SELECT field_id FROM {$this->table} WHERE profile_group IN (".\implode(',', $profile_groups).')';
96
+        $sql .= ' AND user_group IN ('.\implode(',', $user_groups).')';
97 97
         $field_ids        = [];
98 98
         $result           = $this->db->query($sql);
99 99
         if ($result) {
Please login to merge, or discard this patch.
class/VotesHandler.php 2 patches
Indentation   +136 added lines, -136 removed lines patch added patch discarded remove patch
@@ -17,140 +17,140 @@
 block discarded – undo
17 17
  */
18 18
 class VotesHandler extends XoopsPersistableObjectHandler
19 19
 {
20
-    /**
21
-     * VotesHandler constructor.
22
-     * @param \XoopsDatabase $db
23
-     */
24
-    public function __construct(XoopsDatabase $db)
25
-    {
26
-        parent::__construct($db, 'songlist_votes', Votes::class, 'vid', 'ip');
27
-    }
28
-
29
-    /**
30
-     * @return array
31
-     */
32
-    public function filterFields(): array
33
-    {
34
-        return ['vid', 'sid', 'uid', 'ip', 'netaddy', 'rank'];
35
-    }
36
-
37
-    /**
38
-     * @param string $filter
39
-     * @return \CriteriaCompo
40
-     */
41
-    public function getFilterCriteria($filter): CriteriaCompo
42
-    {
43
-        $parts    = \explode('|', $filter);
44
-        $criteria = new CriteriaCompo();
45
-        foreach ($parts as $part) {
46
-            $var = \explode(',', $part);
47
-            if (!empty($var[1]) && !\is_numeric($var[0])) {
48
-                $object = $this->create();
49
-                if (\XOBJ_DTYPE_TXTBOX == $object->vars[$var[0]]['data_type']
50
-                    || \XOBJ_DTYPE_TXTAREA == $object->vars[$var[0]]['data_type']) {
51
-                    $criteria->add(new Criteria('`' . $var[0] . '`', '%' . $var[1] . '%', ($var[2] ?? 'LIKE')));
52
-                } elseif (in_array($object->vars[$var[0]]['data_type'], [XOBJ_DTYPE_INT, XOBJ_DTYPE_DECIMAL, XOBJ_DTYPE_FLOAT])) {
53
-                    $criteria->add(new Criteria('`' . $var[0] . '`', $var[1], ($var[2] ?? '=')));
54
-                } elseif (\XOBJ_DTYPE_ENUM == $object->vars[$var[0]]['data_type']) {
55
-                    $criteria->add(new Criteria('`' . $var[0] . '`', $var[1], ($var[2] ?? '=')));
56
-                } elseif (\XOBJ_DTYPE_ARRAY == $object->vars[$var[0]]['data_type']) {
57
-                    $criteria->add(new Criteria('`' . $var[0] . '`', '%"' . $var[1] . '";%', ($var[2] ?? 'LIKE')));
58
-                }
59
-            } elseif (!empty($var[1]) && \is_numeric($var[0])) {
60
-                $criteria->add(new Criteria($var[0], $var[1]));
61
-            }
62
-        }
63
-
64
-        return $criteria;
65
-    }
66
-
67
-    /**
68
-     * @param string $filter
69
-     * @param string $field
70
-     * @param string $sort
71
-     * @param string $op
72
-     * @param string $fct
73
-     * @return string
74
-     */
75
-    public function getFilterForm($filter, $field, $sort = 'created', $op = 'dashboard', $fct = 'list'): string
76
-    {
77
-        $ele = Utility::getFilterElement($filter, $field, $sort, $op, $fct);
78
-        if (\is_object($ele)) {
79
-            return $ele->render();
80
-        }
81
-
82
-        return '&nbsp;';
83
-    }
84
-
85
-    /**
86
-     * @param bool $force
87
-     * @return mixed
88
-     */
89
-    public function insert(XoopsObject $obj, $force = true)
90
-    {
91
-        if ($obj->isNew()) {
92
-            $obj->setVar('created', \time());
93
-        } else {
94
-            $obj->setVar('updated', \time());
95
-        }
96
-
97
-        return parent::insert($obj, $force);
98
-    }
99
-
100
-    /**
101
-     * @param int $sid
102
-     * @param string$value
103
-     * @return bool
104
-     */
105
-    public function addVote($sid, $value): bool
106
-    {
107
-        $criteria = new CriteriaCompo(new Criteria('sid', $sid));
108
-
109
-        $ip = Utility::getIPData(false);
110
-        if ($ip['uid'] > 0) {
111
-            $criteria->add(new Criteria('uid', $ip['uid']));
112
-        } else {
113
-            $criteria->add(new Criteria('ip', $ip['ip']));
114
-            $criteria->add(new Criteria('netaddy', $ip['network-addy']));
115
-        }
116
-
117
-        if (0 == $this->getCount($criteria) && $sid > 0 && $value > 0) {
118
-            $vote = $this->create();
119
-            $vote->setVar('sid', $sid);
120
-            $vote->setVar('uid', $ip['uid']);
121
-            $vote->setVar('ip', $ip['ip']);
122
-            $vote->setVar('netaddy', $ip['network-addy']);
123
-            $vote->setVar('rank', $value);
124
-            if ($this->insert($vote)) {
125
-                $songsHandler    = \XoopsModules\Songlist\Helper::getInstance()->getHandler('Songs');
126
-                $albumsHandler   = \XoopsModules\Songlist\Helper::getInstance()->getHandler('Albums');
127
-                $artistsHandler  = \XoopsModules\Songlist\Helper::getInstance()->getHandler('Artists');
128
-                $categoryHandler = \XoopsModules\Songlist\Helper::getInstance()->getHandler('Category');
129
-                $genreHandler    = \XoopsModules\Songlist\Helper::getInstance()->getHandler('Genre');
130
-                $voiceHandler    = \XoopsModules\Songlist\Helper::getInstance()->getHandler('Voice');
131
-
132
-                $song  = $songsHandler->get($sid);
133
-                $sql   = [];
134
-                $sql[] = 'UPDATE `' . $songsHandler->table . '` SET `rank` = `rank` + ' . $value . ', `votes` = `votes` + 1 WHERE `' . $songsHandler->keyName . '` = ' . $sid;
135
-                $sql[] = 'UPDATE `' . $categoryHandler->table . '` SET `rank` = `rank` + ' . $value . ', `votes` = `votes` + 1 WHERE `' . $categoryHandler->keyName . '` = ' . $song->getVar($categoryHandler->keyName);
136
-                $sql[] = 'UPDATE `' . $genreHandler->table . '` SET `rank` = `rank` + ' . $value . ', `votes` = `votes` + 1 WHERE `' . $genreHandler->keyName . '` = ' . $song->getVar($genreHandler->keyName);
137
-                $sql[] = 'UPDATE `' . $voiceHandler->table . '` SET `rank` = `rank` + ' . $value . ', `votes` = `votes` + 1 WHERE `' . $voiceHandler->keyName . '` = ' . $song->getVar($voiceHandler->keyName);
138
-                $sql[] = 'UPDATE `' . $albumsHandler->table . '` SET `rank` = `rank` + ' . $value . ', `votes` = `votes` + 1 WHERE `' . $albumsHandler->keyName . '` = ' . $song->getVar($albumsHandler->keyName);
139
-                foreach ($song->getVar('aids') as $aid) {
140
-                    $sql[] = 'UPDATE `' . $artistsHandler->table . '` SET `rank` = `rank` + ' . $value . ', `votes` = `votes` + 1 WHERE `' . $artistsHandler->keyName . '` = ' . $aid;
141
-                }
142
-                foreach ($sql as $question) {
143
-                    $GLOBALS['xoopsDB']->queryF($question);
144
-                }
145
-                \redirect_header($_POST['uri'], 10, \_MD_SONGLIST_MSG_VOTED_FINISHED);
146
-                exit(0);
147
-            }
148
-            \redirect_header($_POST['uri'], 10, \_MD_SONGLIST_MSG_VOTED_ALREADY);
149
-            exit(0);
150
-        }
151
-        \redirect_header($_POST['uri'], 10, \_MD_SONGLIST_MSG_VOTED_SOMETHINGWRONG);
152
-        exit(0);
153
-
154
-        return false;
155
-    }
20
+	/**
21
+	 * VotesHandler constructor.
22
+	 * @param \XoopsDatabase $db
23
+	 */
24
+	public function __construct(XoopsDatabase $db)
25
+	{
26
+		parent::__construct($db, 'songlist_votes', Votes::class, 'vid', 'ip');
27
+	}
28
+
29
+	/**
30
+	 * @return array
31
+	 */
32
+	public function filterFields(): array
33
+	{
34
+		return ['vid', 'sid', 'uid', 'ip', 'netaddy', 'rank'];
35
+	}
36
+
37
+	/**
38
+	 * @param string $filter
39
+	 * @return \CriteriaCompo
40
+	 */
41
+	public function getFilterCriteria($filter): CriteriaCompo
42
+	{
43
+		$parts    = \explode('|', $filter);
44
+		$criteria = new CriteriaCompo();
45
+		foreach ($parts as $part) {
46
+			$var = \explode(',', $part);
47
+			if (!empty($var[1]) && !\is_numeric($var[0])) {
48
+				$object = $this->create();
49
+				if (\XOBJ_DTYPE_TXTBOX == $object->vars[$var[0]]['data_type']
50
+					|| \XOBJ_DTYPE_TXTAREA == $object->vars[$var[0]]['data_type']) {
51
+					$criteria->add(new Criteria('`' . $var[0] . '`', '%' . $var[1] . '%', ($var[2] ?? 'LIKE')));
52
+				} elseif (in_array($object->vars[$var[0]]['data_type'], [XOBJ_DTYPE_INT, XOBJ_DTYPE_DECIMAL, XOBJ_DTYPE_FLOAT])) {
53
+					$criteria->add(new Criteria('`' . $var[0] . '`', $var[1], ($var[2] ?? '=')));
54
+				} elseif (\XOBJ_DTYPE_ENUM == $object->vars[$var[0]]['data_type']) {
55
+					$criteria->add(new Criteria('`' . $var[0] . '`', $var[1], ($var[2] ?? '=')));
56
+				} elseif (\XOBJ_DTYPE_ARRAY == $object->vars[$var[0]]['data_type']) {
57
+					$criteria->add(new Criteria('`' . $var[0] . '`', '%"' . $var[1] . '";%', ($var[2] ?? 'LIKE')));
58
+				}
59
+			} elseif (!empty($var[1]) && \is_numeric($var[0])) {
60
+				$criteria->add(new Criteria($var[0], $var[1]));
61
+			}
62
+		}
63
+
64
+		return $criteria;
65
+	}
66
+
67
+	/**
68
+	 * @param string $filter
69
+	 * @param string $field
70
+	 * @param string $sort
71
+	 * @param string $op
72
+	 * @param string $fct
73
+	 * @return string
74
+	 */
75
+	public function getFilterForm($filter, $field, $sort = 'created', $op = 'dashboard', $fct = 'list'): string
76
+	{
77
+		$ele = Utility::getFilterElement($filter, $field, $sort, $op, $fct);
78
+		if (\is_object($ele)) {
79
+			return $ele->render();
80
+		}
81
+
82
+		return '&nbsp;';
83
+	}
84
+
85
+	/**
86
+	 * @param bool $force
87
+	 * @return mixed
88
+	 */
89
+	public function insert(XoopsObject $obj, $force = true)
90
+	{
91
+		if ($obj->isNew()) {
92
+			$obj->setVar('created', \time());
93
+		} else {
94
+			$obj->setVar('updated', \time());
95
+		}
96
+
97
+		return parent::insert($obj, $force);
98
+	}
99
+
100
+	/**
101
+	 * @param int $sid
102
+	 * @param string$value
103
+	 * @return bool
104
+	 */
105
+	public function addVote($sid, $value): bool
106
+	{
107
+		$criteria = new CriteriaCompo(new Criteria('sid', $sid));
108
+
109
+		$ip = Utility::getIPData(false);
110
+		if ($ip['uid'] > 0) {
111
+			$criteria->add(new Criteria('uid', $ip['uid']));
112
+		} else {
113
+			$criteria->add(new Criteria('ip', $ip['ip']));
114
+			$criteria->add(new Criteria('netaddy', $ip['network-addy']));
115
+		}
116
+
117
+		if (0 == $this->getCount($criteria) && $sid > 0 && $value > 0) {
118
+			$vote = $this->create();
119
+			$vote->setVar('sid', $sid);
120
+			$vote->setVar('uid', $ip['uid']);
121
+			$vote->setVar('ip', $ip['ip']);
122
+			$vote->setVar('netaddy', $ip['network-addy']);
123
+			$vote->setVar('rank', $value);
124
+			if ($this->insert($vote)) {
125
+				$songsHandler    = \XoopsModules\Songlist\Helper::getInstance()->getHandler('Songs');
126
+				$albumsHandler   = \XoopsModules\Songlist\Helper::getInstance()->getHandler('Albums');
127
+				$artistsHandler  = \XoopsModules\Songlist\Helper::getInstance()->getHandler('Artists');
128
+				$categoryHandler = \XoopsModules\Songlist\Helper::getInstance()->getHandler('Category');
129
+				$genreHandler    = \XoopsModules\Songlist\Helper::getInstance()->getHandler('Genre');
130
+				$voiceHandler    = \XoopsModules\Songlist\Helper::getInstance()->getHandler('Voice');
131
+
132
+				$song  = $songsHandler->get($sid);
133
+				$sql   = [];
134
+				$sql[] = 'UPDATE `' . $songsHandler->table . '` SET `rank` = `rank` + ' . $value . ', `votes` = `votes` + 1 WHERE `' . $songsHandler->keyName . '` = ' . $sid;
135
+				$sql[] = 'UPDATE `' . $categoryHandler->table . '` SET `rank` = `rank` + ' . $value . ', `votes` = `votes` + 1 WHERE `' . $categoryHandler->keyName . '` = ' . $song->getVar($categoryHandler->keyName);
136
+				$sql[] = 'UPDATE `' . $genreHandler->table . '` SET `rank` = `rank` + ' . $value . ', `votes` = `votes` + 1 WHERE `' . $genreHandler->keyName . '` = ' . $song->getVar($genreHandler->keyName);
137
+				$sql[] = 'UPDATE `' . $voiceHandler->table . '` SET `rank` = `rank` + ' . $value . ', `votes` = `votes` + 1 WHERE `' . $voiceHandler->keyName . '` = ' . $song->getVar($voiceHandler->keyName);
138
+				$sql[] = 'UPDATE `' . $albumsHandler->table . '` SET `rank` = `rank` + ' . $value . ', `votes` = `votes` + 1 WHERE `' . $albumsHandler->keyName . '` = ' . $song->getVar($albumsHandler->keyName);
139
+				foreach ($song->getVar('aids') as $aid) {
140
+					$sql[] = 'UPDATE `' . $artistsHandler->table . '` SET `rank` = `rank` + ' . $value . ', `votes` = `votes` + 1 WHERE `' . $artistsHandler->keyName . '` = ' . $aid;
141
+				}
142
+				foreach ($sql as $question) {
143
+					$GLOBALS['xoopsDB']->queryF($question);
144
+				}
145
+				\redirect_header($_POST['uri'], 10, \_MD_SONGLIST_MSG_VOTED_FINISHED);
146
+				exit(0);
147
+			}
148
+			\redirect_header($_POST['uri'], 10, \_MD_SONGLIST_MSG_VOTED_ALREADY);
149
+			exit(0);
150
+		}
151
+		\redirect_header($_POST['uri'], 10, \_MD_SONGLIST_MSG_VOTED_SOMETHINGWRONG);
152
+		exit(0);
153
+
154
+		return false;
155
+	}
156 156
 }
Please login to merge, or discard this patch.
Spacing   +17 added lines, -17 removed lines patch added patch discarded remove patch
@@ -8,7 +8,7 @@  discard block
 block discarded – undo
8 8
 use XoopsObject;
9 9
 use XoopsPersistableObjectHandler;
10 10
 
11
-require_once \dirname(__DIR__) . '/include/songlist.object.php';
11
+require_once \dirname(__DIR__).'/include/songlist.object.php';
12 12
 // require_once \dirname(__DIR__) . '/include/songlist.form.php';
13 13
 use  XoopsModules\Songlist\Form\FormController;
14 14
 
@@ -46,15 +46,15 @@  discard block
 block discarded – undo
46 46
             $var = \explode(',', $part);
47 47
             if (!empty($var[1]) && !\is_numeric($var[0])) {
48 48
                 $object = $this->create();
49
-                if (\XOBJ_DTYPE_TXTBOX == $object->vars[$var[0]]['data_type']
50
-                    || \XOBJ_DTYPE_TXTAREA == $object->vars[$var[0]]['data_type']) {
51
-                    $criteria->add(new Criteria('`' . $var[0] . '`', '%' . $var[1] . '%', ($var[2] ?? 'LIKE')));
49
+                if (\XOBJ_DTYPE_TXTBOX==$object->vars[$var[0]]['data_type']
50
+                    || \XOBJ_DTYPE_TXTAREA==$object->vars[$var[0]]['data_type']) {
51
+                    $criteria->add(new Criteria('`'.$var[0].'`', '%'.$var[1].'%', ($var[2] ?? 'LIKE')));
52 52
                 } elseif (in_array($object->vars[$var[0]]['data_type'], [XOBJ_DTYPE_INT, XOBJ_DTYPE_DECIMAL, XOBJ_DTYPE_FLOAT])) {
53
-                    $criteria->add(new Criteria('`' . $var[0] . '`', $var[1], ($var[2] ?? '=')));
54
-                } elseif (\XOBJ_DTYPE_ENUM == $object->vars[$var[0]]['data_type']) {
55
-                    $criteria->add(new Criteria('`' . $var[0] . '`', $var[1], ($var[2] ?? '=')));
56
-                } elseif (\XOBJ_DTYPE_ARRAY == $object->vars[$var[0]]['data_type']) {
57
-                    $criteria->add(new Criteria('`' . $var[0] . '`', '%"' . $var[1] . '";%', ($var[2] ?? 'LIKE')));
53
+                    $criteria->add(new Criteria('`'.$var[0].'`', $var[1], ($var[2] ?? '=')));
54
+                } elseif (\XOBJ_DTYPE_ENUM==$object->vars[$var[0]]['data_type']) {
55
+                    $criteria->add(new Criteria('`'.$var[0].'`', $var[1], ($var[2] ?? '=')));
56
+                } elseif (\XOBJ_DTYPE_ARRAY==$object->vars[$var[0]]['data_type']) {
57
+                    $criteria->add(new Criteria('`'.$var[0].'`', '%"'.$var[1].'";%', ($var[2] ?? 'LIKE')));
58 58
                 }
59 59
             } elseif (!empty($var[1]) && \is_numeric($var[0])) {
60 60
                 $criteria->add(new Criteria($var[0], $var[1]));
@@ -107,14 +107,14 @@  discard block
 block discarded – undo
107 107
         $criteria = new CriteriaCompo(new Criteria('sid', $sid));
108 108
 
109 109
         $ip = Utility::getIPData(false);
110
-        if ($ip['uid'] > 0) {
110
+        if ($ip['uid']>0) {
111 111
             $criteria->add(new Criteria('uid', $ip['uid']));
112 112
         } else {
113 113
             $criteria->add(new Criteria('ip', $ip['ip']));
114 114
             $criteria->add(new Criteria('netaddy', $ip['network-addy']));
115 115
         }
116 116
 
117
-        if (0 == $this->getCount($criteria) && $sid > 0 && $value > 0) {
117
+        if (0==$this->getCount($criteria) && $sid>0 && $value>0) {
118 118
             $vote = $this->create();
119 119
             $vote->setVar('sid', $sid);
120 120
             $vote->setVar('uid', $ip['uid']);
@@ -131,13 +131,13 @@  discard block
 block discarded – undo
131 131
 
132 132
                 $song  = $songsHandler->get($sid);
133 133
                 $sql   = [];
134
-                $sql[] = 'UPDATE `' . $songsHandler->table . '` SET `rank` = `rank` + ' . $value . ', `votes` = `votes` + 1 WHERE `' . $songsHandler->keyName . '` = ' . $sid;
135
-                $sql[] = 'UPDATE `' . $categoryHandler->table . '` SET `rank` = `rank` + ' . $value . ', `votes` = `votes` + 1 WHERE `' . $categoryHandler->keyName . '` = ' . $song->getVar($categoryHandler->keyName);
136
-                $sql[] = 'UPDATE `' . $genreHandler->table . '` SET `rank` = `rank` + ' . $value . ', `votes` = `votes` + 1 WHERE `' . $genreHandler->keyName . '` = ' . $song->getVar($genreHandler->keyName);
137
-                $sql[] = 'UPDATE `' . $voiceHandler->table . '` SET `rank` = `rank` + ' . $value . ', `votes` = `votes` + 1 WHERE `' . $voiceHandler->keyName . '` = ' . $song->getVar($voiceHandler->keyName);
138
-                $sql[] = 'UPDATE `' . $albumsHandler->table . '` SET `rank` = `rank` + ' . $value . ', `votes` = `votes` + 1 WHERE `' . $albumsHandler->keyName . '` = ' . $song->getVar($albumsHandler->keyName);
134
+                $sql[] = 'UPDATE `'.$songsHandler->table.'` SET `rank` = `rank` + '.$value.', `votes` = `votes` + 1 WHERE `'.$songsHandler->keyName.'` = '.$sid;
135
+                $sql[] = 'UPDATE `'.$categoryHandler->table.'` SET `rank` = `rank` + '.$value.', `votes` = `votes` + 1 WHERE `'.$categoryHandler->keyName.'` = '.$song->getVar($categoryHandler->keyName);
136
+                $sql[] = 'UPDATE `'.$genreHandler->table.'` SET `rank` = `rank` + '.$value.', `votes` = `votes` + 1 WHERE `'.$genreHandler->keyName.'` = '.$song->getVar($genreHandler->keyName);
137
+                $sql[] = 'UPDATE `'.$voiceHandler->table.'` SET `rank` = `rank` + '.$value.', `votes` = `votes` + 1 WHERE `'.$voiceHandler->keyName.'` = '.$song->getVar($voiceHandler->keyName);
138
+                $sql[] = 'UPDATE `'.$albumsHandler->table.'` SET `rank` = `rank` + '.$value.', `votes` = `votes` + 1 WHERE `'.$albumsHandler->keyName.'` = '.$song->getVar($albumsHandler->keyName);
139 139
                 foreach ($song->getVar('aids') as $aid) {
140
-                    $sql[] = 'UPDATE `' . $artistsHandler->table . '` SET `rank` = `rank` + ' . $value . ', `votes` = `votes` + 1 WHERE `' . $artistsHandler->keyName . '` = ' . $aid;
140
+                    $sql[] = 'UPDATE `'.$artistsHandler->table.'` SET `rank` = `rank` + '.$value.', `votes` = `votes` + 1 WHERE `'.$artistsHandler->keyName.'` = '.$aid;
141 141
                 }
142 142
                 foreach ($sql as $question) {
143 143
                     $GLOBALS['xoopsDB']->queryF($question);
Please login to merge, or discard this patch.