function generate_members_sitemap() { inc_lib('users/get_list_mbr'); $list_membres = get_list_mbr('u_active = 1', 'u_date_register ASC', '', 0); foreach ($list_membres as $donnees) { Nw::$tpl->setBlock('users', array('ID' => $donnees['u_id'], 'PSEUDO' => $donnees['u_pseudo'], 'ALIAS' => $donnees['u_alias'], 'AVATAR' => $donnees['u_avatar'], 'DATE' => $donnees['date_sitemap'], 'DATE_REGISTER' => $donnees['date_sitemap_register'])); } Nw::$tpl->set(array('_SITE_URL_' => Nw::$site_url)); $content_tpl = Nw::$tpl->pparse('sitemap/users.html'); $xml_file = gzopen(PATH_ROOT . 'inc/res/sitemaps/' . Nw::$site_lang . '.members.xml.gz', 'w'); gzwrite($xml_file, $content_tpl); gzclose($xml_file); }
protected function main() { $pages = array('faq', 'legal', 'rules', 'terms', 'tour', 'about'); if (!empty($_GET['topic']) && in_array($_GET['topic'], $pages)) { $this->set_title(Nw::$lang['help'][$_GET['topic'] . '_title']); $this->add_css('code.css'); $this->add_js('admin.js'); if ($_GET['topic'] == 'about') { inc_lib('users/get_list_mbr'); $list_membres = get_list_mbr('u_group IN (1, 8, 13)', 'u_group ASC, u_date_register ASC'); foreach ($list_membres as $donnees) { Nw::$tpl->setBlock('users', array('ID' => $donnees['u_id'], 'PSEUDO' => $donnees['u_pseudo'], 'ALIAS' => $donnees['u_alias'], 'AVATAR' => $donnees['u_avatar'], 'BIO' => $donnees['u_bio'])); } } // Fil ariane $this->set_filAriane(array(Nw::$lang['help'][$_GET['topic'] . '_title'] => array(''))); $this->set_tpl('static/' . Nw::$site_lang . '/' . $_GET['topic'] . '.html'); } else { redir(Nw::$lang['help']['error_dont_exist'], false, Nw::$site_url); } }
protected function main() { $this->set_title(Nw::$lang['users']['list_members']); $this->set_tpl('membres/list_membres.html'); // Fil ariane $this->set_filAriane(array(Nw::$lang['users']['members_section'] => array('users.html'), Nw::$lang['users']['list_members'] => array(''))); $order_by = 'u_pseudo'; $asc_desc = 'ASC'; $list_criteres = array(); $corres_id_champs = array(0 => 'u_date_register', 1 => 'u_last_visit', 2 => 'u_pseudo', 3 => 's_nb_news'); // Recherche dans les membres if (isset($_POST['searchm'])) { header('Location: users.html?pseudo=' . htmlspecialchars($_POST['pseudo']) . '&group=' . intval($_POST['groupe']) . '&local=' . htmlspecialchars($_POST['local']) . '&order=' . intval($_POST['order']) . '&ad=' . htmlspecialchars($_POST['asc_desc'])); } if (!empty($_GET['pseudo'])) { $list_criteres[] = 'u_pseudo LIKE "%' . insertBD(trim($_GET['pseudo'])) . '%"'; } if (!empty($_GET['group'])) { $list_criteres[] = 'u_group = ' . intval($_GET['group']); } if (!empty($_GET['local'])) { $list_criteres[] = 'u_localisation LIKE "%' . insertBD(trim($_GET['local'])) . '%"'; } if (isset($_GET['order']) && isset($corres_id_champs[$_GET['order']])) { $order_by = $corres_id_champs[$_GET['order']]; } if (isset($_GET['ad']) && ($_GET['ad'] == 'asc' || $_GET['ad'] == 'desc')) { $asc_desc = strtoupper($_GET['ad']); } $sql_implode_arg = count($list_criteres) > 0 ? ' AND ' . implode(' AND ', $list_criteres) : ''; inc_lib('bbcode/clearer'); // On compte le nbr total de membres inc_lib('users/count_all_mbr'); $nombre_membres = count_all_mbr('u_active = 1' . $sql_implode_arg); // Pagination $page = isset($_GET['page']) ? intval($_GET['page']) : 1; $nombreDePages = ceil($nombre_membres / Nw::$pref['nb_news_homepage']); // On vérifie bien que la page existe if ($nombreDePages > 0 && $page > $nombreDePages) { redir(Nw::$lang['common']['pg_not_exist'], false, 'users.html'); } // On recherche toutes les news en rédaction inc_lib('users/get_list_mbr'); $list_membres = get_list_mbr('u_active = 1' . $sql_implode_arg, $order_by . ' ' . $asc_desc, $page, Nw::$pref['nb_news_homepage']); foreach ($list_membres as $donnees) { Nw::$tpl->setBlock('users', array('ID' => $donnees['u_id'], 'PSEUDO' => $donnees['u_pseudo'], 'ALIAS' => $donnees['u_alias'], 'AVATAR' => $donnees['u_avatar'], 'DATE_REGISTER' => date_sql($donnees['date_register'], $donnees['heures_date_register'], $donnees['jours_date_register']), 'DATE_LVISIT' => date_sql($donnees['last_visit'], $donnees['heures_last_visit'], $donnees['jours_last_visit']), 'BIO' => !empty($donnees['u_bio']) ? CoupeChar(clearer($donnees['u_bio']), '...', 200) : '', 'LOCAL' => $donnees['u_localisation'], 'GROUPE_TITRE' => $donnees['g_titre'], 'GROUPE_ICONE' => $donnees['g_icone'], 'TXT_NEWS' => sprintf(Nw::$lang['users']['nombre_actu'] . ($donnees['s_nb_news'] > 1 ? 's' : ''), $donnees['s_nb_news']), 'TXT_CONTRIB' => sprintf(Nw::$lang['users']['nombre_contrib'] . ($donnees['s_nb_contrib'] > 1 ? 's' : ''), $donnees['s_nb_contrib']), 'TXT_COMS' => sprintf(Nw::$lang['users']['nombre_com'] . ($donnees['s_nb_coms'] > 1 ? 's' : ''), $donnees['s_nb_coms']), 'NBR_NEWS' => $donnees['s_nb_news'], 'NBR_CONTRIB' => $donnees['s_nb_contrib'], 'NBR_COMS' => $donnees['s_nb_coms'])); } /** * Liste des groupes **/ inc_lib('admin/get_list_grp'); $groupes = get_list_grp(); foreach ($groupes as $donnees) { Nw::$tpl->setBlock('groups', array('ID' => $donnees['g_id'], 'NOM' => $donnees['g_nom'])); } /** * Derniers inscrits **/ inc_lib('users/get_last_registered'); $last_register = get_last_registered(5); foreach ($last_register as $donnees) { Nw::$tpl->setBlock('lr', array('ID' => $donnees['u_id'], 'PSEUDO' => $donnees['u_pseudo'], 'AVATAR' => $donnees['u_avatar'], 'ALIAS' => $donnees['u_alias'], 'DATE_REGISTER' => date_sql($donnees['date_register'], $donnees['heures_date_register'], $donnees['jours_date_register']))); } $par_pseudo = isset($_GET['pseudo']) ? htmlspecialchars($_GET['pseudo']) : ''; $par_group = isset($_GET['group']) ? intval($_GET['group']) : ''; $par_local = isset($_GET['local']) ? htmlspecialchars($_GET['local']) : ''; $par_order = isset($_GET['order']) ? intval($_GET['order']) : ''; $par_asc = isset($_GET['ad']) ? htmlspecialchars($_GET['ad']) : ''; Nw::$tpl->set(array('LIST_PG' => list_pg($nombreDePages, $page, 'users%s.html?pseudo=' . $par_pseudo . '&group=' . $par_group . '&local=' . $par_local . '&order=' . $par_order . '&ad=' . $par_asc), 'PSEUDO' => $par_pseudo, 'GROUP' => $par_group, 'LOCAL' => $par_local, 'ORDER' => $par_order, 'ASC' => $par_asc)); }