Skip to content

Commit 6f44755

Browse files
authored
Add sortorder parameter to selectForFormsList method
there are a problem on many extrafields list : we can't sort list by decrease and sort from a specific fields since we have add an sql prevention on filter based on : separator (who is used to separate parameters) @eldy i propose to remplace on extrafields parameters the : in the sql injection prevention by another caracters, by exemple the ; or the § , and replace it after having explode all the parameters
1 parent 240352b commit 6f44755

File tree

1 file changed

+3
-2
lines changed

1 file changed

+3
-2
lines changed

htdocs/core/class/html.form.class.php

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9156,10 +9156,11 @@ public function selectForForms($objectdesc, $htmlname, $preSelectedValue, $showe
91569156
* @param int $disabled 1=Html component is disabled
91579157
* @param string $sortfield Sort field
91589158
* @param string $filter Add more filter (Universal Search Filter)
9159+
* @param string $sortorder Sort order field
91599160
* @return string|array<array{key:string,value:mixed,label:string}> Return HTML string
91609161
* @see selectForForms()
91619162
*/
9162-
public function selectForFormsList($objecttmp, $htmlname, $preselectedvalue, $showempty = '', $searchkey = '', $placeholder = '', $morecss = '', $moreparams = '', $forcecombo = 0, $outputmode = 0, $disabled = 0, $sortfield = '', $filter = '')
9163+
public function selectForFormsList($objecttmp, $htmlname, $preselectedvalue, $showempty = '', $searchkey = '', $placeholder = '', $morecss = '', $moreparams = '', $forcecombo = 0, $outputmode = 0, $disabled = 0, $sortfield = '', $filter = '', $sortorder = 'ASC')
91639164
{
91649165
global $langs, $user, $hookmanager;
91659166

@@ -9296,7 +9297,7 @@ public function selectForFormsList($objecttmp, $htmlname, $preselectedvalue, $sh
92969297
}
92979298
}
92989299
}
9299-
$sql .= $this->db->order($sortfield ? $sortfield : $fieldstoshow, "ASC");
9300+
$sql .= $this->db->order($sortfield ? $sortfield : $fieldstoshow, $sortorder);
93009301
//$sql.=$this->db->plimit($limit, 0);
93019302
//print $sql;
93029303

0 commit comments

Comments
 (0)