This project does not seem to handle request data directly as such no vulnerable execution paths were found.
include
, or for example
via PHP's auto-loading mechanism.
1 | <?php |
||||
2 | |||||
3 | namespace XoopsModules\Wflinks; |
||||
4 | |||||
5 | /** |
||||
6 | * Class: Lists |
||||
7 | * |
||||
8 | * Module: WF-Links |
||||
9 | * Version: v1.0.3 |
||||
10 | * Release Date: 21 June 2005 |
||||
11 | * Developer: John N |
||||
12 | * Team: WF-Projects |
||||
13 | * Licence: GNU |
||||
14 | */ |
||||
15 | class Lists |
||||
16 | { |
||||
17 | public $value; |
||||
18 | public $selected; |
||||
19 | public $path = 'uploads'; |
||||
20 | public $size; |
||||
21 | public $emptyselect; |
||||
22 | public $type; |
||||
23 | public $prefix; |
||||
24 | public $suffix; |
||||
25 | |||||
26 | /** |
||||
27 | * @param string $path |
||||
28 | * @param null $value |
||||
0 ignored issues
–
show
Documentation
Bug
introduced
by
![]() |
|||||
29 | * @param string $selected |
||||
30 | * @param int $size |
||||
31 | * @param int $emptyselect |
||||
32 | * @param int $type |
||||
33 | * @param string $prefix |
||||
34 | * @param string $suffix |
||||
35 | */ |
||||
36 | public function __construct( |
||||
37 | $path = 'uploads', |
||||
38 | $value = null, |
||||
39 | $selected = '', |
||||
40 | $size = 1, |
||||
41 | $emptyselect = 0, |
||||
42 | $type = 0, |
||||
43 | $prefix = '', |
||||
0 ignored issues
–
show
The parameter
$prefix is not used and could be removed.
(
Ignorable by Annotation
)
If this is a false-positive, you can also ignore this issue in your code via the
This check looks for parameters that have been defined for a function or method, but which are not used in the method body. ![]() |
|||||
44 | $suffix = '' |
||||
0 ignored issues
–
show
The parameter
$suffix is not used and could be removed.
(
Ignorable by Annotation
)
If this is a false-positive, you can also ignore this issue in your code via the
This check looks for parameters that have been defined for a function or method, but which are not used in the method body. ![]() |
|||||
45 | ) { |
||||
46 | $this->value = $value; |
||||
47 | $this->selection = $selected; |
||||
0 ignored issues
–
show
|
|||||
48 | $this->path = $path; |
||||
49 | $this->size = (int)$size; |
||||
50 | $this->emptyselect = $emptyselect ? 0 : 1; |
||||
51 | $this->type = $type; |
||||
52 | } |
||||
53 | |||||
54 | /** |
||||
55 | * @param array $this_array |
||||
56 | * |
||||
57 | * @return string |
||||
58 | */ |
||||
59 | public function getArray($this_array) |
||||
60 | { |
||||
61 | $ret = "<select size='" . $this->getSize() . "' name='" . $this->getValue() . "'>"; |
||||
0 ignored issues
–
show
Are you sure the usage of
$this->getValue() targeting XoopsModules\Wflinks\Lists::getValue() seems to always return null.
This check looks for function or method calls that always return null and whose return value is used. class A
{
function getObject()
{
return null;
}
}
$a = new A();
if ($a->getObject()) {
The method The reason is most likely that a function or method is imcomplete or has been reduced for debug purposes. ![]() |
|||||
62 | if ($this->emptyselect) { |
||||
63 | $ret .= "<option value='" . $this->getValue() . "'>----------------------</option>"; |
||||
0 ignored issues
–
show
Are you sure the usage of
$this->getValue() targeting XoopsModules\Wflinks\Lists::getValue() seems to always return null.
This check looks for function or method calls that always return null and whose return value is used. class A
{
function getObject()
{
return null;
}
}
$a = new A();
if ($a->getObject()) {
The method The reason is most likely that a function or method is imcomplete or has been reduced for debug purposes. ![]() |
|||||
64 | } |
||||
65 | foreach ($this_array as $content) { |
||||
66 | $opt_selected = ''; |
||||
67 | |||||
68 | if ($content[0] == $this->getSelected()) { |
||||
69 | $opt_selected = 'selected'; |
||||
70 | } |
||||
71 | $ret .= "<option value='" . $content . "' $opt_selected>" . $content . '</option>'; |
||||
72 | } |
||||
73 | $ret .= '</select>'; |
||||
74 | |||||
75 | return $ret; |
||||
76 | } |
||||
77 | |||||
78 | /** |
||||
79 | * Private to be called by other parts of the class |
||||
80 | * @param $dirname |
||||
81 | * @return array |
||||
82 | */ |
||||
83 | public function getDirListAsArray($dirname) |
||||
84 | { |
||||
85 | $dirlist = []; |
||||
86 | if (\is_dir($dirname) && $handle = \opendir($dirname)) { |
||||
87 | while (false !== ($file = \readdir($handle))) { |
||||
88 | if (!\preg_match('/^[.]{1,2}$/', $file)) { |
||||
89 | if ('cvs' !== mb_strtolower($file) && \is_dir($dirname . $file)) { |
||||
90 | $dirlist[$file] = $file; |
||||
91 | } |
||||
92 | } |
||||
93 | } |
||||
94 | \closedir($handle); |
||||
95 | |||||
96 | \reset($dirlist); |
||||
97 | } |
||||
98 | |||||
99 | return $dirlist; |
||||
100 | } |
||||
101 | |||||
102 | /** |
||||
103 | * @param $dirname |
||||
104 | * @param string $type |
||||
105 | * @param string $prefix |
||||
106 | * @param int $noselection |
||||
107 | * |
||||
108 | * @return array |
||||
109 | */ |
||||
110 | public static function getListTypeAsArray($dirname, $type = '', $prefix = '', $noselection = 1) |
||||
111 | { |
||||
112 | $filelist = []; |
||||
113 | switch (\trim($type)) { |
||||
114 | case 'images': |
||||
115 | $types = '[.gif|.jpg|.png]'; |
||||
116 | if ($noselection) { |
||||
117 | $filelist[''] = _AM_WFL_SHOWNOIMAGE; |
||||
118 | } |
||||
119 | break; |
||||
120 | case 'html': |
||||
121 | $types = '[.htm|.html|.xhtml|.php|.php3|.phtml|.txt]'; |
||||
122 | if ($noselection) { |
||||
123 | $filelist[''] = 'No Selection'; |
||||
124 | } |
||||
125 | break; |
||||
126 | default: |
||||
127 | $types = ''; |
||||
128 | if ($noselection) { |
||||
129 | $filelist[''] = 'No Selected File'; |
||||
130 | } |
||||
131 | break; |
||||
132 | } |
||||
133 | |||||
134 | if ('/' === mb_substr($dirname, -1)) { |
||||
135 | $dirname = mb_substr($dirname, 0, -1); |
||||
136 | } |
||||
137 | |||||
138 | if (\is_dir($dirname) && $handle = \opendir($dirname)) { |
||||
139 | while (false !== ($file = \readdir($handle))) { |
||||
140 | if (!\preg_match('/^[.]{1,2}$/', $file) && \preg_match("/$types$/i", $file) |
||||
141 | && \is_file($dirname . '/' . $file)) { |
||||
142 | if ('blank.gif' === mb_strtolower($file)) { |
||||
143 | continue; |
||||
144 | } |
||||
145 | $file = $prefix . $file; |
||||
146 | $filelist[$file] = $file; |
||||
147 | } |
||||
148 | } |
||||
149 | \closedir($handle); |
||||
150 | \asort($filelist); |
||||
151 | \reset($filelist); |
||||
152 | } |
||||
153 | |||||
154 | return $filelist; |
||||
155 | } |
||||
156 | |||||
157 | /** |
||||
158 | * @param int $type |
||||
159 | * @param $selected |
||||
160 | * |
||||
161 | * @return mixed |
||||
162 | */ |
||||
163 | public static function getForum($type, $selected) |
||||
164 | { |
||||
165 | global $xoopsDB; |
||||
166 | switch (\xoops_trim($type)) { |
||||
167 | case 2: |
||||
168 | $sql = 'SELECT id, name FROM ' . $xoopsDB->prefix('ibf_forums') . ' ORDER BY id'; |
||||
169 | break; |
||||
170 | case 3: |
||||
171 | $sql = 'SELECT forum_id, forum_name FROM ' . $xoopsDB->prefix('pbb_forums') . ' ORDER BY forum_id'; |
||||
172 | break; |
||||
173 | case 4: |
||||
174 | $sql = 'SELECT forum_id, forum_name FROM ' . $xoopsDB->prefix('bbex_forums') . ' ORDER BY forum_id'; |
||||
175 | break; |
||||
176 | case 1: |
||||
177 | case 0: |
||||
178 | default: |
||||
179 | $sql = 'SELECT forum_id, forum_name FROM ' . $xoopsDB->prefix('newbb_forums') . ' ORDER BY forum_id'; |
||||
180 | break; |
||||
181 | } |
||||
182 | $result = $xoopsDB->query($sql); |
||||
183 | |||||
184 | $noforum = \defined('_WFL_NO_FORUM') ? _WFL_NO_FORUM : _AM_WFL_NO_FORUM; |
||||
0 ignored issues
–
show
|
|||||
185 | |||||
186 | echo "<select size='1' name='forumid'>"; |
||||
187 | echo "<option value='0'>" . $noforum . '</option>'; |
||||
188 | while (list($forum_id, $forum_name) = $xoopsDB->fetchRow($result)) { |
||||
189 | $opt_selected = ''; |
||||
190 | if ($forum_id == $selected) { |
||||
191 | $opt_selected = 'selected'; |
||||
192 | } |
||||
193 | echo "<option value='" . $forum_id . "' $opt_selected>" . $forum_name . '</option>'; |
||||
194 | } |
||||
195 | echo '</select>'; |
||||
196 | |||||
197 | return $noforum; |
||||
198 | } |
||||
199 | |||||
200 | /** |
||||
201 | * @return null |
||||
202 | */ |
||||
203 | public function getValue() |
||||
204 | { |
||||
205 | return $this->value; |
||||
206 | } |
||||
207 | |||||
208 | public function getSelected() |
||||
209 | { |
||||
210 | return $this->selected; |
||||
211 | } |
||||
212 | |||||
213 | /** |
||||
214 | * @return string |
||||
215 | */ |
||||
216 | public function getPath() |
||||
217 | { |
||||
218 | return $this->path; |
||||
219 | } |
||||
220 | |||||
221 | /** |
||||
222 | * @return int |
||||
223 | */ |
||||
224 | public function getSize() |
||||
225 | { |
||||
226 | return $this->size; |
||||
227 | } |
||||
228 | |||||
229 | /** |
||||
230 | * @return int |
||||
231 | */ |
||||
232 | public function getEmptySelect() |
||||
233 | { |
||||
234 | return $this->emptyselect; |
||||
235 | } |
||||
236 | |||||
237 | /** |
||||
238 | * @return int |
||||
239 | */ |
||||
240 | public function getType() |
||||
241 | { |
||||
242 | return $this->type; |
||||
243 | } |
||||
244 | |||||
245 | public function getPrefix() |
||||
246 | { |
||||
247 | return $this->prefix; |
||||
248 | } |
||||
249 | |||||
250 | public function getSuffix() |
||||
251 | { |
||||
252 | return $this->suffix; |
||||
253 | } |
||||
254 | } |
||||
255 |