Activation (oui) ou desactivation (non) de la fonction $typo_couleur_active = 'oui'; // --> Nuances personnalisables par l'utilisateur $couleur = array( 'noir' => "#000000", 'blanc' => "#FFFFFF", 'rouge' => "#FF0000", 'vert' => "#00FF00", 'bleu' => "#0000FF", 'jaune' => "#FFFF00", 'gris' => "#808080", 'marron' => "#800000", 'violet' => "#800080", 'rose' => "#FFC0CB", 'orange' => "#FFA500" ); $recherche = array( 'noir' => "/(\[noir\])(.*?)(\[\/noir\])/", 'blanc' => "/(\[blanc\])(.*?)(\[\/blanc\])/", 'rouge' => "/(\[rouge\])(.*?)(\[\/rouge\])/", 'vert' => "/(\[vert\])(.*?)(\[\/vert\])/", 'bleu' => "/(\[bleu\])(.*?)(\[\/bleu\])/", 'jaune' => "/(\[jaune\])(.*?)(\[\/jaune\])/", 'gris' => "/(\[gris\])(.*?)(\[\/gris\])/", 'marron' => "/(\[marron\])(.*?)(\[\/marron\])/", 'violet' => "/(\[violet\])(.*?)(\[\/violet\])/", 'rose' => "/(\[rose\])(.*?)(\[\/rose\])/", 'orange' => "/(\[orange\])(.*?)(\[\/orange\])/" ); $remplace = array( 'noir' => "\\2", 'blanc' => "\\2", 'rouge' => "\\2", 'vert' => "\\2", 'bleu' => "\\2", 'jaune' => "\\2", 'gris' => "\\2", 'marron' => "\\2", 'violet' => "\\2", 'rose' => "\\2", 'orange' => "\\2" ); $supprime = "\\2"; if ($typo_couleur_active == 'non') { $texte = preg_replace($recherche, $supprime, $texte); } else { $texte = preg_replace($recherche, $remplace, $texte); } return $texte; } // ======================================================================================================================================= // Filtre : premier_jour_annee // ======================================================================================================================================= // Auteur: Smellup // Fonction : Retourne la date du premier jour de l'annee passe en argument // ======================================================================================================================================= // function premier_jour_annee($annee) { if (!$annee) return; $jour = date("Y-m-d H:i:s", mktime(0,0,0,1,1,$annee)); return $jour; } // FIN du Filtre : premier_jour_annee // ======================================================================================================================================= // Filtre : dernier_jour_annee // ======================================================================================================================================= // Auteur: Smellup // Fonction : Retourne la date du dernier jour de l'annee passe en argument // ======================================================================================================================================= // function dernier_jour_annee($annee) { if (!$annee) return; $jour = date("Y-m-d H:i:s", mktime(23,59,59,12,31,$annee)); return $jour; } // FIN du Filtre : dernier_jour_annee // ======================================================================================================================================= // Filtre : debut_journee // ======================================================================================================================================= // Auteur: Smellup // Fonction : Retourne la date-heure de debut de la journee passee en argument // ======================================================================================================================================= // function debut_journee($date) { if (!$date) return; $jour = date('d', strtotime($date)); $mois = date('m', strtotime($date)); $annee = date('Y', strtotime($date)); $jour = date("Y-m-d H:i:s", mktime(0,0,0,$mois,$jour,$annee)); return $jour; } // FIN du Filtre : debut_journee // ======================================================================================================================================= // Filtre : fin_mois_precedent // ======================================================================================================================================= // Auteur: Smellup // Fonction : Calcul la date au format demande correspondant au dernier jour du mois precedent celui du timestamp en argument // ======================================================================================================================================= // function fin_mois_precedent($timestamp, $format) { if (!$timestamp) return; $date = mktime(0, 0, 0, date('m', $timestamp), 0, date('Y', $timestamp)); return date($format, $date); } // FIN du Filtre : premier_jour_mois // ======================================================================================================================================= // Filtre : fin_journee // ======================================================================================================================================= // Auteur: Smellup // Fonction : Retourne la date-heure de fin de la journee passee en argument // ======================================================================================================================================= // function fin_journee($date) { if (!$date) return; $jour = date('d', strtotime($date)); $mois = date('m', strtotime($date)); $annee = date('Y', strtotime($date)); $jour = date("Y-m-d H:i:s", mktime(23,59,59,$mois,$jour,$annee)); return $jour; } // FIN du Filtre : fin_journee // ======================================================================================================================================= // Filtre : libelle_statut // ======================================================================================================================================= // Auteur: Smellup // Fonction : Retourne le libelle multilangue du statut d'un auteur // ======================================================================================================================================= // function libelle_statut($statut) { return _T('sarkaspip:statut_'.$statut); } // FIN du Filtre : libelle_statut // ======================================================================================================================================= // Filtre : lister_fonds // ======================================================================================================================================= // Auteur: Smellup // Fonction : Retourne la chaine des options du select de la liste des fonds // ======================================================================================================================================= // function lister_fonds($bidon, $image, $suffixe){ if (function_exists('lire_config')) $f_selected = lire_config('sarkaspip_styles/fond_'.$image.$suffixe); $dir = sous_repertoire(_DIR_TMP, 'fonds'); $saves = preg_files($dir); $options = ''; foreach ($saves as $_fichier) { $nom = basename($_fichier); $selected = ($_fichier == $f_selected) ? ' selected="selected"' : ''; $options .= ''; } return $options; } // FIN du Filtre : lister_fonds // ======================================================================================================================================= // Filtre : afaire_liste_par_jalon // ======================================================================================================================================= // Auteur: Smellup // Fonction : Retourne les blocs d'affichage des tickets par jalon dans la page afaire // ======================================================================================================================================= // function afaire_liste_par_jalon($jalons) { $page = NULL; if (($jalons) && defined('_SARKASPIP_AFAIRE_JALONS_AFFICHES')) { $liste = explode(":", $jalons); $i =0; foreach($liste as $_jalon) { $i += 1; $page .= recuperer_fond('noisettes/afaire/inc_afaire_jalon', array('jalon' => $_jalon, 'ancre' => 'ancre_jalon_'.strval($i))); } } return $page; } // FIN du Filtre : afaire_liste_par_jalon // ======================================================================================================================================= // Filtre : afaire_tdm_par_jalon // ======================================================================================================================================= // Auteur: Smellup // Fonction : Retourne les blocs d'affichage des tickets par jalon dans la page afaire // ======================================================================================================================================= // function afaire_tdm_par_jalon($jalons) { $page = NULL; if (($jalons) && defined('_SARKASPIP_AFAIRE_JALONS_AFFICHES')) { $liste = explode(":", $jalons); $i =0; foreach($liste as $_jalon) { $i += 1; $nb = afaire_compteur_jalon($_jalon); $nb_str = ($nb == 0) ? _T('sarkaspip:0_ticket') : (($nb == 1) ? strval($nb).' '._T('sarkaspip:1_ticket') : strval($nb).' '._T('sarkaspip:n_tickets')); $page .= '
  • ' ._T('sarkaspip:afaire_colonne_jalon').' « '.$_jalon.' », '.$nb_str .'
  • '; } } $nb = afaire_compteur_jalon(); if ($nb > 0) { $nb_str = ($nb == 1) ? strval($nb).' '._T('sarkaspip:1_ticket') : strval($nb).' '._T('sarkaspip:n_tickets'); $page .= '
  • « ' ._T('sarkaspip:afaire_non_planifies').' », '.$nb_str .'
  • '; } return $page; } // FIN du Filtre : afaire_tdm_par_jalon // ======================================================================================================================================= // Filtre : afaire_compteur_jalon // ======================================================================================================================================= // Auteur: Smellup // Fonction : Retourne le nombre de tickets pour le jalon ou pour le jalon et le statut choisis // ======================================================================================================================================= // function afaire_compteur_jalon($jalon='', $statut='') { $valeur = 0; // Nombre total de tickets pour le jalon $select = array('t1.id_ticket'); $from = array('spip_tickets AS t1'); $where = array('t1.jalon='.sql_quote($jalon)); if ($statut) $where = array_merge($where, array('t1.statut='.sql_quote($statut))); $result = sql_select($select, $from, $where); $valeur = sql_count($result); return $valeur; } // FIN du Filtre : afaire_compteur_jalon // ======================================================================================================================================= // Filtre : afaire_avancement_jalon // ======================================================================================================================================= // Auteur: Smellup // Fonction : Retourne le pourcetage de tickets termines sur le nombre de tickets total du jalon // ======================================================================================================================================= // function afaire_avancement_jalon($jalon='') { $valeur = 0; // Nombre total de tickets pour le jalon $select = array('t1.id_ticket'); $from = array('spip_tickets AS t1'); $where = array('t1.jalon='.sql_quote($jalon)); $result = sql_select($select, $from, $where); $n1 = sql_count($result); // Nombre de tickets termines pour le jalon if ($n1 != 0) { $where = array_merge($where, array(sql_in('t1.statut', array('resolu','ferme')))); $result = sql_select($select, $from, $where); $n2 = sql_count($result); $valeur = floor($n2*100/$n1); } return $valeur; } // FIN du Filtre : afaire_avancement_jalon // ======================================================================================================================================= // Filtre : afaire_ticket_existe // ======================================================================================================================================= // Auteur: Smellup // Fonction : Retourne l'info qu'au moins un ticket a ete cree // ======================================================================================================================================= // function afaire_ticket_existe($bidon) { $existe = false; // Test si la table existe $table = sql_showtable('spip_tickets', true); if ($table) { // Nombre total de tickets $from = array('spip_tickets AS t1'); $where = array(); $result = sql_countsel($from, $where); // Nombre de tickets termines pour le jalon if ($result >= 1) $existe = true; } return $existe; } // FIN du Filtre : afaire_ticket_existe // ======================================================================================================================================= // Filtre : statut_forum // ======================================================================================================================================= // Auteur: Smellup // Fonction : Retourne le statut d'un forum cad non autorise, ouvert, ferme // ======================================================================================================================================= // function statut_forum($id_article) { $id = intval($id_article); $statut = 'non_autorise'; // Forum active ou pas ? $accepter = 'non'; $select = array('t1.accepter_forum'); $from = array('spip_articles AS t1'); $where = array('t1.id_article='.sql_quote($id)); $result = sql_select($select, $from, $where); if ($row = sql_fetch($result)) $accepter = $row['accepter_forum']; // Nombre messages de forum de l'article $from = array('spip_forum AS t1'); $where = array('t1.id_article='.sql_quote($id)); $nb = sql_countsel($from, $where); // Nombre de tickets termines pour le jalon if ($nb >= 1) $statut = ($accepter == 'non') ? 'ferme' : 'ouvert'; else if ($accepter != 'non') $statut = 'ouvert'; return $statut; } // FIN du Filtre : statut_forum // ======================================================================================================================================= // Filtre : sauvegarder_fonds // ======================================================================================================================================= // Auteur: Smellup // Fonction : Cree les sauvegardes d'une liste de fonds suivant un format et dans un repertoire donne // ======================================================================================================================================= // function sauvegarder_fonds($fonds, $ou, $mode='maintenance') { $dir = $ou; foreach ($fonds as $_fond) { if ($mode == 'maintenance') { $dir = sous_repertoire($ou, $_fond); $nom = $_fond . "_" . date("Ymd_Hi") . ".txt"; } else { $nom = $_fond . ".txt"; } $f = $dir . $nom; $ok = ecrire_fichier($f, serialize(lire_config($_fond))); } return $ok; } // FIN du Filtre : sauvegarder_fonds // ======================================================================================================================================= // Filtre : restaurer_fonds // ======================================================================================================================================= // Auteur: Smellup // Fonction : Restaure les sauvegardes d'une liste de fonds suivant un format et dans un repertoire donne // ======================================================================================================================================= // function restaurer_fonds($fichiers) { foreach ($fichiers as $_fichier) { lire_fichier($_fichier,$tableau); $fond = basename($_fichier, '.txt'); $ok = ecrire_config($fond, $tableau); } return $ok; } // FIN du Filtre : restaurer_fonds // ======================================================================================================================================= // Filtre : nettoyer_titre_sujet // ======================================================================================================================================= // Auteur: Smellup // Fonction : Restaure le titre exact du sujet en supprimant le préfixe éventuel // ======================================================================================================================================= // function nettoyer_titre_sujet($titre, $resolu='') { $titre_nettoye = trim(preg_replace(',^\[(annonce|epingle)\]( )*,UimsS', '', $titre)); $titre_nettoye = trim(preg_replace(',_(verrouille|resolu)_,UimsS', '', $titre_nettoye)); if ($resolu) $titre_nettoye = _T('sarkaspip:titre_sujet_resolu', array('titre' => $titre_nettoye)); return $titre_nettoye; } // FIN du Filtre : nettoyer_titre_sujet // ======================================================================================================================================= // Filtres : module AGENDA // ======================================================================================================================================= // Auteur: Smellup // Fonction : regroupe les filtres permettant les affichages de l'agenda // ======================================================================================================================================= // include_spip('inc/sarkaspip_filtres_agenda'); ?>