/** * Anti-grillé : permet de savoir si quelqu'un a édité la news entre temps * et de fusionner les 2 versions **/ function get_info_abonnement($where) { $donnees = array(); $query = Nw::$DB->query('SELECT a_id, a_id_membre, a_email, a_ip, a_token, ' . decalageh('a_date', 'date') . ' FROM ' . Nw::$prefix_table . 'abonnes WHERE ' . $where) or Nw::$DB->trigger(__LINE__, __FILE__); $dn = $query->fetch_assoc(); return $dn; }
function get_info_mbr($res, $by = null) { if (is_null($by)) { if (is_numeric($res)) { $where_clause = 'u_id = ' . intval($res); } else { $where_clause = 'u_alias = \'' . insertBD(trim($res)) . '\''; } } elseif ($by == 'alias') { $where_clause = 'u_alias = \'' . insertBD(trim($res)) . '\''; } elseif ($by == 'id') { $where_clause = 'u_id = ' . intval($res); } elseif ($by == 'mail') { $where_clause = 'u_email = \'' . insertBD($res) . '\''; } elseif ($by == 'identifier') { $where_clause = 'u_identifier = \'' . insertBD($res) . '\''; } elseif ($by == 'pseudo') { $where_clause = 'u_pseudo = \'' . insertBD($res) . '\''; } $query = Nw::$DB->query('SELECT u_id, u_alias, u_avatar, u_pseudo, u_group, u_localisation, u_ident_unique, u_bio, ' . decalageh('u_date_register', 'date_register') . ', ' . decalageh('u_last_visit', 'last_visit') . ', u_password, u_code_act, u_active, u_email, u_decalage, DATE_FORMAT(u_date_naissance, "%d/%m/%Y") AS date_naissance, g_titre, g_icone FROM ' . Nw::$prefix_table . 'members LEFT JOIN ' . Nw::$prefix_table . 'groups ON g_id = u_group WHERE ' . $where_clause) or Nw::$DB->trigger(__LINE__, __FILE__); return $query->fetch_assoc(); }
function get_list_news($where = '', $ordre = 'n_date DESC', $page = '', $element_par_page = 0) { $where_clause = strlen($where) > 0 ? 'WHERE ' . $where . ' ' : ''; $add_champs_sql = ''; $add_jointure_sql = ''; $end_rqt_sql = ''; $list_news = array(); if (!empty($page) && is_numeric($page)) { $premierMessageAafficher = ($page - 1) * $element_par_page; $end_rqt_sql = ' LIMIT ' . $premierMessageAafficher . ', ' . $element_par_page . ' '; } // Si l'utilisateur est connecté if (is_logged_in()) { $add_champs_sql .= ', f_id_membre, f_type, vp.v_id_membre'; $add_jointure_sql = ' LEFT JOIN ' . Nw::$prefix_table . 'news_flags ON (n_id = f_id_news AND f_id_membre = ' . intval(Nw::$dn_mbr['u_id']) . ')'; $add_jointure_sql .= ' LEFT JOIN ' . Nw::$prefix_table . 'news_vote vp ON (n_id = vp.v_id_news AND vp.v_id_membre = ' . intval(Nw::$dn_mbr['u_id']) . ' AND vp.v_etat = n_etat)'; } // Rqt SQL $rqt_list_news = Nw::$DB->query('SELECT t_tag AS first_tag, c_id, c_rewrite, c_nom, n_resume, n_nb_votes, n_nb_votes_neg, n_nb_versions, n_id, n_id_auteur, n_id_cat, n_titre, n_etat, n_vues, n_private, n_nbr_coms, i_id, i_nom, ' . decalageh('n_date', 'date_news') . ', u_id, u_pseudo, u_alias, u_avatar' . $add_champs_sql . ' FROM ' . Nw::$prefix_table . 'news LEFT JOIN ' . Nw::$prefix_table . 'members ON n_id_auteur = u_id' . $add_jointure_sql . ' LEFT JOIN ' . Nw::$prefix_table . 'categories ON c_id = n_id_cat LEFT JOIN ' . Nw::$prefix_table . 'news_images ON i_id = n_id_image LEFT JOIN ' . Nw::$prefix_table . 'tags ON (t_id_news = n_id AND t_position = 1) ' . $where_clause . 'GROUP BY n_id ORDER BY ' . $ordre . $end_rqt_sql) or Nw::$DB->trigger(__LINE__, __FILE__); while ($donnees_news = $rqt_list_news->fetch_assoc()) { $list_news[] = $donnees_news; } return $list_news; }
function get_list_abonnements() { $donnees = array(); $query = Nw::$DB->query('SELECT a_id, a_id_membre, a_email, a_ip, a_token, ' . decalageh('a_date', 'date') . ' FROM ' . Nw::$prefix_table . 'abonnes ORDER BY a_id_membre ASC') or Nw::$DB->trigger(__LINE__, __FILE__); while ($dn = $query->fetch_assoc()) { $donnees[] = $dn; } return $donnees; }
function check_ip($ip) { $query = Nw::$DB->query("SELECT DISTINCT u_id, u_pseudo, u_ip, g_nom, " . decalageh('u_date_register', 'date_register') . ", u_identifier\n FROM " . Nw::$prefix_table . "members_ip \n LEFT JOIN " . Nw::$prefix_table . "members ON ip_id_mbr = u_id\n LEFT JOIN " . Nw::$prefix_table . "groups ON u_group = g_id\n WHERE ip_ip = " . ip2long($ip) . "\n ORDER BY ip_date_last DESC") or Nw::$DB->trigger(__LINE__, __FILE__); $list_mbr = array(); while ($donnees = $query->fetch_assoc()) { $list_mbr[] = $donnees; } return $list_mbr; }
/** * Retourne les infos sur un article. * @param integer $id L'id de l'article. * @return array */ function get_info_article($id) { $rqt_list_articles = Nw::$DB->query('SELECT p_id, p_ressource_name, p_link, p_lang, ' . decalageh('p_date', 'date', DATE) . ', p_description, p_num, p_description, u_id, u_pseudo FROM ' . Nw::$prefix_table . 'press LEFT JOIN ' . Nw::$prefix_table . 'members ON p_id_admin = u_id WHERE p_id = ' . intval($id)) or Nw::$DB->trigger(__LINE__, __FILE__); return $rqt_list_articles->fetch_assoc(); }
function get_info_vrs($id_vrs) { $query = Nw::$DB->query('SELECT v_id, v_ip, v_texte, v_raison, v_number, ' . decalageh('v_date', 'date') . ', v_ip, u_id, u_pseudo, u_alias FROM ' . Nw::$prefix_table . 'news_versions LEFT JOIN ' . Nw::$prefix_table . 'members ON u_id=v_id_membre WHERE v_id=' . intval($id_vrs)) or Nw::$DB->trigger(__LINE__, __FILE__); $donnees = $query->fetch_assoc(); return $donnees; }
function get_list_ban_ip($finis = null, $ip = null) { $where = array(); if (!is_null($finis)) { $where[] = 'ban_is_end = ' . (int) $finis; } if (!is_null($ip)) { $where[] = 'ban_ip = ' . ip2long($ip); } $query = Nw::$DB->query("SELECT ban_id, ban_ip, ban_motif, ban_motif_admin,\n " . decalageh('ban_date', 'date') . ", " . decalageh('ban_date_end', 'date_end') . ",\n ban_id_modo, u_pseudo, u_alias, ban_is_end\n FROM " . Nw::$prefix_table . "ban_ip\n LEFT JOIN " . Nw::$prefix_table . "members ON ban_id_modo = u_id\n " . (!empty($where) ? 'WHERE ' . implode(' AND ', $where) : '') . "\n ORDER BY ban_is_end, ban_date DESC"); return $query->fetch_all(); }
/** * Retourne la liste des articles de presse enregistrés. * @return array */ function get_list_articles() { $rqt_list_articles = Nw::$DB->query('SELECT p_id, p_ressource_name, p_link, p_lang, ' . decalageh('p_date', 'date', DATE) . ', p_description, p_num, p_description, u_id, u_pseudo FROM ' . Nw::$prefix_table . 'press LEFT JOIN ' . Nw::$prefix_table . 'members ON p_id_admin = u_id ORDER BY p_date DESC') or Nw::$DB->trigger(__LINE__, __FILE__); while ($donnees_articles = $rqt_list_articles->fetch_assoc()) { $list_articles[] = $donnees_articles; } return $list_articles; }
function get_last_registered($limit = 0) { $list_membres = array(); $end_rqt_sql = $limit != 0 ? ' LIMIT ' . $limit : ''; // Rqt SQL $rqt = Nw::$DB->query('SELECT u_id, u_pseudo, u_alias, u_avatar, u_localisation, u_bio, ' . decalageh('u_date_register', 'date_register') . ', ' . decalageh('u_last_visit', 'last_visit') . ' FROM ' . Nw::$prefix_table . 'members WHERE u_active = 1 GROUP BY u_id ORDER BY u_date_register DESC' . $end_rqt_sql) or Nw::$DB->trigger(__LINE__, __FILE__); while ($donnees = $rqt->fetch_assoc()) { $list_membres[] = $donnees; } return $list_membres; }
function get_list_live_messages($id_live, $limit = 0) { $list_post = array(); $limit_clause = $limit > 0 ? ' LIMIT ' . $limit : ''; $rqt = Nw::$DB->query('SELECT u_id, u_pseudo, u_alias, u_avatar, post_id, post_id_membre, post_id_live, post_contenu, ' . decalageh('post_date', 'date') . ' FROM ' . Nw::$prefix_table . 'w_live_posts LEFT JOIN ' . Nw::$prefix_table . 'members ON u_id = post_id_membre WHERE post_id_live = ' . intval($id_live) . ' ORDER BY post_date DESC' . $limit_clause) or Nw::$DB->trigger(__LINE__, __FILE__); while ($donnees = $rqt->fetch_assoc()) { $list_post[] = $donnees; } return $list_post; }
function get_list_alerts_news($id_news = null, $solved = null) { $where = array(); if (!is_null($id_news)) { $where[] = 'a_id_news = ' . intval($id_news); } if (!is_null($solved)) { $where[] = 'a_solved = ' . (int) $solved; } $query = Nw::$DB->query("SELECT c_id, c_nom, c_rewrite, a_id, a_solved, a_texte, a_ip, a_motif, \n " . decalageh('a_date', 'date') . ", a_auteur, a_admin, u1.u_pseudo AS pseudo_auteur,\n u2.u_pseudo AS pseudo_admin, a_id_news, n_titre, u1.u_alias\n FROM " . Nw::$prefix_table . "news_alerts \n LEFT JOIN " . Nw::$prefix_table . "members u1 ON a_auteur = u1.u_id\n LEFT JOIN " . Nw::$prefix_table . "members u2 ON a_admin = u2.u_id \n LEFT JOIN " . Nw::$prefix_table . "news ON a_id_news = n_id \n LEFT JOIN " . Nw::$prefix_table . "categories ON n_id_cat = c_id" . (!empty($where) ? ' WHERE ' . implode(' AND ', $where) : '') . "\n ORDER BY a_solved") or Nw::$DB->trigger(__LINE__, __FILE__); $dn = array(); while ($row = $query->fetch_assoc()) { $dn[] = $row; } return $dn; }
function get_list_votes_news($where = '', $ordre = 'v_date DESC', $page = '', $element_par_page = 0) { $where_clause = strlen($where) > 0 ? 'WHERE ' . $where . ' ' : ''; $list = array(); if (!empty($page) && is_numeric($page)) { $premierMessageAafficher = ($page - 1) * $element_par_page; $end_rqt_sql = ' LIMIT ' . $premierMessageAafficher . ', ' . $element_par_page . ' '; } // Rqt SQL $rqt = Nw::$DB->query('SELECT v_etat, v_id, v_type, ' . decalageh('v_date', 'date') . ', u_id, u_pseudo, u_alias, u_avatar FROM ' . Nw::$prefix_table . 'news_vote LEFT JOIN ' . Nw::$prefix_table . 'members ON v_id_membre = u_id ' . $where_clause . 'GROUP BY v_id ORDER BY ' . $ordre . $end_rqt_sql) or Nw::$DB->trigger(__LINE__, __FILE__); while ($donnees = $rqt->fetch_assoc()) { $list[] = $donnees; } return $list; }
function get_list_news_related($ids_news = array(), $limit = 3, $etat = 3) { $news_related = array(); $count_nb_related_bynews = array(); $ids_related_passed = array(); $add_champs_sql = ''; $add_jointure_sql = ''; if (is_array($ids_news)) { $rqt_sql = ' IN (' . implode(', ', $ids_news) . ')'; } else { $rqt_sql = ' = ' . intval($ids_news); } // Si l'utilisateur est connecté if (is_logged_in()) { $add_champs_sql = ', v_id_membre'; $add_jointure_sql = ' LEFT JOIN ' . Nw::$prefix_table . 'news_vote ON (n_id = v_id_news AND v_id_membre = ' . intval(Nw::$dn_mbr['u_id']) . ')'; } $rqt_list_news = Nw::$DB->query('SELECT t1.t_id_news AS old_news, t1.t_tag, n_id, n_titre, n_nb_votes, n_nbr_coms, i_id, i_nom, c_id, c_nom, c_rewrite, ' . decalageh('n_date', 'date_news') . $add_champs_sql . ' FROM ' . Nw::$prefix_table . 'tags t1 LEFT JOIN ' . Nw::$prefix_table . 'tags t2 ON (t2.t_tag = t1.t_tag) LEFT JOIN ' . Nw::$prefix_table . 'news ON t2.t_id_news = n_id LEFT JOIN ' . Nw::$prefix_table . 'categories ON n_id_cat = c_id LEFT JOIN ' . Nw::$prefix_table . 'news_images ON i_id = n_id_image' . $add_jointure_sql . ' WHERE n_etat = ' . $etat . ' AND t1.t_id_news' . $rqt_sql . ' AND t1.t_position = 1 ORDER BY t1.t_id_news, n_date DESC') or Nw::$DB->trigger(__LINE__, __FILE__); while ($donnees_news = $rqt_list_news->fetch_assoc()) { if ($donnees_news['old_news'] != $donnees_news['n_id']) { $count_nb_related_bynews[$donnees_news['old_news']] = isset($count_nb_related_bynews[$donnees_news['old_news']]) ? $count_nb_related_bynews[$donnees_news['old_news']] + 1 : 1; if ($count_nb_related_bynews[$donnees_news['old_news']] <= $limit && !in_array($donnees_news['n_id'], $ids_related_passed)) { $vars_imp = array('id' => $donnees_news['n_id'], 'titre' => $donnees_news['n_titre'], 'cat_rewrite' => $donnees_news['c_rewrite'], 'rewrite' => rewrite($donnees_news['n_titre']), 'date' => date_sql($donnees_news['date_news'], $donnees_news['heures_date_news'], $donnees_news['jours_date_news']), 'nbr_votes' => $donnees_news['n_nb_votes'], 'nbr_coms' => sprintf(Nw::$lang['news']['nbr_comments_news'], $donnees_news['n_nbr_coms'], $donnees_news['n_nbr_coms'] > 1 ? Nw::$lang['news']['add_s_comments'] : ''), 'has_voted' => is_logged_in() ? $donnees_news['v_id_membre'] : 0, 'image_id' => $donnees_news['i_id'], 'image_nom' => $donnees_news['i_nom']); if (is_array($ids_news)) { $news_related[$donnees_news['old_news']][] = $vars_imp; } else { $news_related[] = $vars_imp; } $ids_related_passed[] = $donnees_news['n_id']; } } } return $news_related; }
function get_news_contrib($where = '', $ordre = 'n_date, v_date DESC', $page = '', $element_par_page = 0) { $where_clause = strlen($where) > 0 ? 'WHERE ' . $where . ' ' : ''; $list = array(); if (!empty($page) && is_numeric($page)) { $premierMessageAafficher = ($page - 1) * $element_par_page; $end_rqt_sql = ' LIMIT ' . $premierMessageAafficher . ', ' . $element_par_page . ' '; } // Rqt SQL $rqt = Nw::$DB->query('SELECT c_id, c_nom, c_rewrite, i_id, i_nom, v_ip, v_nb_mots, v_diff_mots, v_id, v_id_membre, v_id_news, v_raison, n_etat, n_id, n_titre, ' . decalageh('v_date', 'date') . ' FROM ' . Nw::$prefix_table . 'news_versions LEFT JOIN ' . Nw::$prefix_table . 'news ON v_id_news = n_id LEFT JOIN ' . Nw::$prefix_table . 'categories ON n_id_cat = c_id LEFT JOIN ' . Nw::$prefix_table . 'news_images ON i_id = n_id_image ' . $where_clause . 'ORDER BY ' . $ordre . $end_rqt_sql) or Nw::$DB->trigger(__LINE__, __FILE__); while ($donnees = $rqt->fetch_assoc()) { $list[] = $donnees; } return $list; }
function get_list_mbr($where = '', $ordre = 'u_pseudo ASC', $page = '', $element_par_page = 0) { $where_clause = strlen($where) > 0 ? ' WHERE ' . $where . ' ' : ''; $list_membres = array(); $end_rqt_sql = ''; if (!empty($page) && is_numeric($page)) { $premierMessageAafficher = ($page - 1) * $element_par_page; $end_rqt_sql = ' LIMIT ' . $premierMessageAafficher . ', ' . $element_par_page . ' '; } // Rqt SQL $rqt = Nw::$DB->query('SELECT s_nb_news, s_nb_contrib, s_nb_coms, u_id, u_pseudo, u_alias, u_avatar, u_localisation, u_bio, g_id, g_titre, g_icone, ' . decalageh('u_date_register', 'date_register') . ', ' . decalageh('u_last_visit', 'last_visit') . ', DATE_FORMAT(u_last_visit, "%Y-%m-%dT%H:%i:%s+01:00") AS date_sitemap, DATE_FORMAT(u_date_register, "%Y-%m-%dT%H:%i:%s+01:00") AS date_sitemap_register FROM ' . Nw::$prefix_table . 'members LEFT JOIN ' . Nw::$prefix_table . 'groups ON u_group = g_id LEFT JOIN ' . Nw::$prefix_table . 'members_stats ON s_id_membre = u_id ' . $where_clause . 'GROUP BY u_id ORDER BY ' . $ordre . $end_rqt_sql) or Nw::$DB->trigger(__LINE__, __FILE__); while ($donnees = $rqt->fetch_assoc()) { $list_membres[] = $donnees; } return $list_membres; }
function get_comments_mbr($where = '', $ordre = 'c_date DESC', $page = '', $element_par_page = 0) { $where_clause = strlen($where) > 0 ? 'WHERE ' . $where . ' ' : ''; $list = array(); if (!empty($page) && is_numeric($page)) { $premierMessageAafficher = ($page - 1) * $element_par_page; $end_rqt_sql = ' LIMIT ' . $premierMessageAafficher . ', ' . $element_par_page . ' '; } // Rqt SQL $rqt = Nw::$DB->query('SELECT cat.c_nom, cat.c_rewrite, g_id, g_icone, g_titre, u_id, u_pseudo, u_avatar, u_alias, com.c_masque, com.c_id, com.c_id_news, com.c_id_membre, com.c_ip, com.c_texte, com.c_plussoie, n_etat, n_id, n_titre, ' . decalageh('c_date', 'date') . ' FROM ' . Nw::$prefix_table . 'news_commentaires com LEFT JOIN ' . Nw::$prefix_table . 'news ON c_id_news = n_id LEFT JOIN ' . Nw::$prefix_table . 'categories cat ON n_id_cat = cat.c_id LEFT JOIN ' . Nw::$prefix_table . 'members ON c_id_membre = u_id LEFT JOIN ' . Nw::$prefix_table . 'groups ON u_group = g_id ' . $where_clause . 'ORDER BY ' . $ordre . $end_rqt_sql) or Nw::$DB->trigger(__LINE__, __FILE__); while ($donnees = $rqt->fetch_assoc()) { $list[] = $donnees; } return $list; }
function get_list_last_cmt($etat_news = 0, $ordre = 'com.c_date DESC', $page = '', $element_par_page = 0) { $where_clause = $etat_news != 0 ? 'WHERE n_etat = ' . intval($etat_news) . ' ' : ''; $add_champs_sql = ''; $add_jointure_sql = ''; $list_cmts = array(); if (!empty($page) && is_numeric($page)) { $premierMessageAafficher = ($page - 1) * $element_par_page; $end_rqt_sql = ' LIMIT ' . $premierMessageAafficher . ', ' . $element_par_page . ' '; } // Rqt SQL $rqt = Nw::$DB->query('SELECT cat.c_nom, cat.c_rewrite, n_id, n_titre, u_alias, u_avatar, u_id, u_pseudo, com.c_id, com.c_id_news, com.c_id_membre, com.c_texte, com.c_ip, com.c_plussoie, ' . decalageh('com.c_date', 'date') . ' FROM ' . Nw::$prefix_table . 'news_commentaires com LEFT JOIN ' . Nw::$prefix_table . 'members ON com.c_id_membre = u_id LEFT JOIN ' . Nw::$prefix_table . 'news ON com.c_id_news = n_id LEFT JOIN ' . Nw::$prefix_table . 'categories cat ON n_id_cat = cat.c_id ' . $where_clause . 'ORDER BY ' . $ordre . $end_rqt_sql) or Nw::$DB->trigger(__LINE__, __FILE__); while ($donnees = $rqt->fetch_assoc()) { $list_cmts[] = $donnees; } return $list_cmts; }
function get_list_cmt_news($id_news, $ordre = 'c_date ASC', $page = '', $element_par_page = 0) { $where_clause = $id_news != 0 ? 'WHERE c_id_news = ' . intval($id_news) . ' ' : ''; $add_champs_sql = ''; $add_jointure_sql = ''; $list_cmts = array(); if (!empty($page) && is_numeric($page)) { $premierMessageAafficher = ($page - 1) * $element_par_page; $end_rqt_sql = ' LIMIT ' . $premierMessageAafficher . ', ' . $element_par_page . ' '; } // Rqt SQL $rqt = Nw::$DB->query('SELECT g_nom, g_titre, g_icone, u_avatar, u_id, u_pseudo, u_alias, c_masque, c_masque_raison, c_id, c_id_news, c_id_membre, c_texte, c_ip, c_plussoie, ' . decalageh('c_date', 'date') . ' FROM ' . Nw::$prefix_table . 'news_commentaires LEFT JOIN ' . Nw::$prefix_table . 'members ON c_id_membre = u_id LEFT JOIN ' . Nw::$prefix_table . 'groups ON u_group = g_id ' . $where_clause . 'ORDER BY ' . $ordre . $end_rqt_sql) or Nw::$DB->trigger(__LINE__, __FILE__); while ($donnees = $rqt->fetch_assoc()) { $list_cmts[] = $donnees; } return $list_cmts; }
function get_news_logs($where = '', $ordre = 'l_date DESC', $page = '', $element_par_page = 0) { $where_clause = !empty($where) ? 'WHERE ' . $where . ' ' : ''; $add_champs_sql = ''; $add_jointure_sql = ''; $end_rqt_sql = ''; $list = array(); if (!empty($page) && is_numeric($page)) { $premierMessageAafficher = ($page - 1) * $element_par_page; $end_rqt_sql = ' LIMIT ' . $premierMessageAafficher . ', ' . $element_par_page . ' '; } // Rqt SQL $rqt = Nw::$DB->query('SELECT n_id, n_titre, l_id_news, l_id_membre, l_titre, l_action, l_texte, l_ip, u_id, u_pseudo, u_avatar, u_alias, ' . decalageh('l_date', 'date') . ' FROM ' . Nw::$prefix_table . 'news_logs LEFT JOIN ' . Nw::$prefix_table . 'members ON l_id_membre = u_id LEFT JOIN ' . Nw::$prefix_table . 'groups ON u_group = g_id LEFT JOIN ' . Nw::$prefix_table . 'news ON l_id_news = n_id ' . $where_clause . 'ORDER BY ' . $ordre . $end_rqt_sql) or Nw::$DB->trigger(__LINE__, __FILE__); while ($donnees = $rqt->fetch_assoc()) { $list[] = $donnees; } return $list; }
function get_list_top_actu($limit = 5) { $add_champs_sql = ''; $add_jointure_sql = ''; $list_news = array(); // Si l'utilisateur est connecté if (is_logged_in()) { $add_champs_sql = ', v_id_membre'; $add_jointure_sql = ' LEFT JOIN ' . Nw::$prefix_table . 'news_vote ON (n_id = v_id_news AND v_id_membre = ' . intval(Nw::$dn_mbr['u_id']) . ')'; } $rqt_list_news = Nw::$DB->query('SELECT i_id, i_nom, ' . decalageh('n_date', 'date_news') . ', n_id, n_id_auteur, n_id_cat, n_titre, n_etat, n_vues, n_private, c_id, c_rewrite, c_nom, n_nbr_coms, n_nb_votes' . $add_champs_sql . ' FROM ' . Nw::$prefix_table . 'news LEFT JOIN ' . Nw::$prefix_table . 'categories ON c_id = n_id_cat LEFT JOIN ' . Nw::$prefix_table . 'news_images ON i_id = n_id_image' . $add_jointure_sql . ' WHERE n_etat = 3 AND n_date >= DATE_SUB(NOW(), INTERVAL 1 MONTH) GROUP BY n_id ORDER BY n_nb_votes DESC, n_vues DESC LIMIT ' . $limit) or Nw::$DB->trigger(__LINE__, __FILE__); while ($donnees_news = $rqt_list_news->fetch_assoc()) { $list_news[] = $donnees_news; } return $list_news; }
function get_info_news($id_news, $id_version = 0) { $id_version_sql = $id_version != 0 ? intval($id_version) : 'n_last_version'; $add_champs_sql = ''; $add_jointure_sql = ''; // Si l'utilisateur est connecté if (is_logged_in()) { $add_champs_sql .= ', f_id_membre, f_type, vp.v_id_membre'; $add_jointure_sql .= ' LEFT JOIN ' . Nw::$prefix_table . 'news_flags ON (n_id = f_id_news AND f_type = 1 AND f_id_membre = ' . intval(Nw::$dn_mbr['u_id']) . ')'; $add_jointure_sql .= ' LEFT JOIN ' . Nw::$prefix_table . 'news_vote vp ON (n_id = vp.v_id_news AND vp.v_id_membre = ' . intval(Nw::$dn_mbr['u_id']) . ' AND vp.v_etat = n_etat)'; } // Rqt SQL $rqt_dn_news = Nw::$DB->query('SELECT c_id, c_rewrite, c_nom, v_texte, n_nb_votes, n_nb_votes_neg, n_resume, n_nb_src, n_last_version, n_nb_versions, n_id, n_id_auteur, n_id_cat, n_titre, n_etat, n_vues, n_private, n_nbr_coms, i_id, i_nom, ' . decalageh('n_date', 'date_news') . ', u_id, u_pseudo, u_alias, u_avatar, u_bio' . $add_champs_sql . ' FROM ' . Nw::$prefix_table . 'news LEFT JOIN ' . Nw::$prefix_table . 'members ON n_id_auteur = u_id LEFT JOIN ' . Nw::$prefix_table . 'categories ON c_id = n_id_cat LEFT JOIN ' . Nw::$prefix_table . 'news_versions ON (v_id_news = n_id AND v_id = ' . $id_version_sql . ') LEFT JOIN ' . Nw::$prefix_table . 'news_images ON i_id = n_id_image' . $add_jointure_sql . ' WHERE n_id = ' . intval($id_news)) or Nw::$DB->trigger(__LINE__, __FILE__); return $rqt_dn_news->fetch_assoc(); }
function get_list_vrs($id_news = 0, $limit = 0) { $add_sql = ''; $add_sql2 = ''; if ($id_news != 0) { $add_sql = ' WHERE v_id_news=' . intval($id_news); } if ($limit != 0) { $add_sql2 = ' LIMIT ' . intval($limit); } $query = Nw::$DB->query('SELECT c_id, c_nom, c_rewrite, n_id, n_titre, v_id, v_id_news, v_ip, v_texte, v_raison, v_number, v_mineure, ' . decalageh('v_date', 'date') . ', v_ip, u_id, u_alias, u_avatar, u_pseudo FROM ' . Nw::$prefix_table . 'news_versions LEFT JOIN ' . Nw::$prefix_table . 'news ON v_id_news = n_id LEFT JOIN ' . Nw::$prefix_table . 'categories ON n_id_cat = c_id LEFT JOIN ' . Nw::$prefix_table . 'members ON u_id=v_id_membre' . $add_sql . ' ORDER BY v_date DESC, v_id DESC' . $add_sql2) or Nw::$DB->trigger(__LINE__, __FILE__); $dn_versions = array(); while ($donnees = $query->fetch_assoc()) { $dn_versions[] = $donnees; } $query->free(); return $dn_versions; }