2020-09-09 06:39:51 +00:00
|
|
|
<?php
|
|
|
|
|
2022-02-16 04:08:28 +00:00
|
|
|
namespace Code\Widget;
|
2020-09-09 06:39:51 +00:00
|
|
|
|
2022-02-16 04:08:28 +00:00
|
|
|
use Code\Render\Theme;
|
2022-02-12 20:43:29 +00:00
|
|
|
|
2021-12-02 23:02:31 +00:00
|
|
|
class Site_projects
|
|
|
|
{
|
|
|
|
|
|
|
|
public function widget($args)
|
|
|
|
{
|
|
|
|
$results = [];
|
2022-07-20 07:15:18 +00:00
|
|
|
$query = q("select site_project, site_type, count(site_project) as total from site
|
|
|
|
where site_project != '' and site_flags != 256 and site_dead = 0 group by site_project, site_type order by site_project desc");
|
|
|
|
if ($query) {
|
|
|
|
usort($query, ['self', 'site_sort']);
|
|
|
|
foreach ($query as $rv) {
|
2021-12-02 23:02:31 +00:00
|
|
|
$result = [];
|
|
|
|
$result['name'] = $rv['site_project'];
|
|
|
|
$result['type'] = $rv['site_type'];
|
|
|
|
$result['cname'] = ucfirst($result['name']);
|
|
|
|
if ($rv['site_project'] === $_REQUEST['project']) {
|
|
|
|
$result['selected'] = true;
|
|
|
|
}
|
|
|
|
$result['total'] = $rv['total'];
|
|
|
|
$results[] = $result;
|
|
|
|
}
|
|
|
|
|
2022-07-20 07:15:18 +00:00
|
|
|
$output = replace_macros(Theme::get_template('site_projects.tpl'), [
|
2022-03-18 19:38:08 +00:00
|
|
|
'$title' => t('Community Types'),
|
2021-12-02 23:02:31 +00:00
|
|
|
'$desc' => '',
|
2022-03-18 19:38:08 +00:00
|
|
|
'$all' => t('All community types'),
|
2022-04-06 10:19:30 +00:00
|
|
|
'base' => z_root() . '/communities',
|
2021-12-02 23:02:31 +00:00
|
|
|
'$sel_all' => (($_REQUEST['project']) ? false : true),
|
|
|
|
'$terms' => $results
|
|
|
|
]);
|
|
|
|
|
2022-07-20 07:15:18 +00:00
|
|
|
return $output;
|
2021-12-02 23:02:31 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
public static function site_sort($a, $b)
|
|
|
|
{
|
2022-03-18 19:38:08 +00:00
|
|
|
return strcasecmp($a['site_project'], $b['site_project']);
|
2021-12-02 23:02:31 +00:00
|
|
|
}
|
2020-09-09 06:39:51 +00:00
|
|
|
}
|