| Server IP : 46.105.57.169 / Your IP : 216.73.217.35 Web Server : Apache System : Linux webm002.cluster120.gra.hosting.ovh.net 6.18.42-ovh-vps-grsec-zfs+ #1 SMP PREEMPT_DYNAMIC Wed Aug 5 15:59:48 CEST 2026 x86_64 User : verseaumee ( 152031) PHP Version : 8.5.7 Disable Function : _dyuweyrj4,_dyuweyrj4r,dl MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /home/verseaumee/quaadraa/app/Models/ |
Upload File : |
<?php
namespace App\Models;
class SubsidiaryModel
{
public static function getAll(string $lang = 'fr'): array
{
return Database::fetchAll(
'SELECT s.*, st.name, st.tagline, st.description, st.meta_desc
FROM subsidiaries s
JOIN subsidiary_translations st ON st.subsidiary_id = s.id AND st.lang = :lang
WHERE s.is_active = 1
ORDER BY s.sort_order',
[':lang' => $lang]
);
}
public static function getByPole(string $pole, string $lang = 'fr'): array
{
return Database::fetchAll(
'SELECT s.*, st.name, st.tagline, st.description
FROM subsidiaries s
JOIN subsidiary_translations st ON st.subsidiary_id = s.id AND st.lang = :lang
WHERE s.pole = :pole AND s.is_active = 1
ORDER BY s.sort_order',
[':lang' => $lang, ':pole' => $pole]
);
}
public static function getBySlug(string $slug, string $lang = 'fr'): array|false
{
return Database::fetchOne(
'SELECT s.*, st.name, st.tagline, st.description, st.meta_desc
FROM subsidiaries s
JOIN subsidiary_translations st ON st.subsidiary_id = s.id
WHERE s.slug = :slug
AND st.lang = :lang
AND s.is_active = 1',
[':lang' => $lang, ':slug' => $slug]
);
}
public static function groupedByPole(string $lang = 'fr'): array
{
$all = self::getAll($lang);
$grouped = [];
foreach ($all as $sub) {
$grouped[$sub['pole']][] = $sub;
}
return $grouped;
}
}