if (!$id) {
return null;
}
- if (ctype_digit($id)) {
+ if (is_int($id) || ctype_digit($id)) {
$where = XDB::format('id = {?}', $id);
} else {
$where = XDB::format('diminutif = {?}', $id);
FROM account_profiles
WHERE uid = {?} AND FIND_IN_SET(\'owner\', perms)',
$login->id());
- } else if (ctype_digit($login)) {
+ } else if (is_int($login) || ctype_digit($login)) {
return XDB::fetchOneCell('SELECT pid
FROM profiles
WHERE pid = {?}', $login);
{
$this->requireAccounts();
if (!is_null($group)) {
- if (ctype_digit($group)) {
+ if (is_int($group) || ctype_digit($group)) {
$index = $sub = $group;
} else {
$index = $group;
if (is_null($key)) {
$joins['gpa' . $sub] = PlSqlJoin::inner('groups');
$joins['gpm' . $sub] = PlSqlJoin::left('group_members', '$ME.uid = $UID AND $ME.asso_id = gpa' . $sub . '.id');
- } else if (ctype_digit($key)) {
+ } else if (is_int($key) || ctype_digit($key)) {
$joins['gpm' . $sub] = PlSqlJoin::left('group_members', '$ME.uid = $UID AND $ME.asso_id = ' . $key);
} else {
$joins['gpa' . $sub] = PlSqlJoin::inner('groups', '$ME.diminutif = {?}', $key);
private function getSinglePromotion(PlPage &$page, $promo)
{
- if (!ctype_digit($promo) || $promo < 1920 || $promo > date('Y')) {
+ if (!(is_int($promo) || ctype_digit($promo)) || $promo < 1920 || $promo > date('Y')) {
$page->trigError('Promotion invalide : ' . $promo . '.');
return null;
}
et qu'il ne contient que des lettres non accentuées,
des chiffres ou les caractères - et .");
return $old;
- } elseif ($new && ctype_digit($new)) {
+ } elseif ($new && (is_int($new) || ctype_digit($new))) {
$page->trigError("Le raccourci demandé ne peut être accepté car il
ne contient que des chiffres. Rajoute-lui par exemple
une lettre.");
$with_link = $params->b('link', true);
$with_groupperms = $params->b('groupperms', true);
$user = $params->v('user');
- if (ctype_digit($user)) {
+ if (is_int($user) || ctype_digit($user)) {
$user = User::getWithUID($user);
}