Changeset 74895 in spip-zone
- Timestamp:
- Aug 23, 2013, 1:46:42 AM (8 years ago)
- Location:
- _plugins_/mesfavoris
- Files:
-
- 1 added
- 10 edited
Legend:
- Unmodified
- Added
- Removed
-
_plugins_/mesfavoris/action/ajouter_favori.php
r61801 r74895 2 2 /* 3 3 * Plugin mesfavoris 4 * (c) 2009-201 2 Olivier Sallou, Cedric Morin4 * (c) 2009-2013 Olivier Sallou, Cedric Morin, Gilles Vincent 5 5 * Distribue sous licence GPL 6 6 * … … 20 20 else 21 21 $id_auteur = $GLOBALS['visiteur_session']['id_auteur']; 22 if (count($arg)>3) 23 $categorie = $arg[3]; 24 else 25 $categorie = ''; 22 26 23 27 include_spip('inc/mesfavoris'); 24 mesfavoris_ajouter($id_ favori);28 mesfavoris_ajouter($id_objet,$objet,$id_auteur,$categorie); 25 29 } 26 30 -
_plugins_/mesfavoris/balise/formulaire_favori.php
r53714 r74895 2 2 /* 3 3 * Plugin mesfavoris 4 * (c) 2009-201 0 Olivier Sallou, Cedric Morin4 * (c) 2009-2013 Olivier Sallou, Cedric Morin, Gilles Vincent 5 5 * Distribue sous licence GPL 6 6 * … … 13 13 * Par defaut, l'objet et son identifiant sont pris dans la boucle 14 14 * <BOUCLE_(ARTICLES){id_article}> #FORMULAIRE_FAVORI ... 15 * 15 * 16 16 * Mais il est possible de forcer un objet particulier : 17 17 * #FORMULAIRE_FAVORI{article,8} 18 * 18 * 19 * Il est également possible de forcer à une catégorie donnée 20 * #FORMULAIRE_FAVORI{article,8,ma_categorie} 21 * <BOUCLE_(ARTICLES){id_article}> #FORMULAIRE_FAVORI{ma_categorie} ... 22 * 19 23 */ 20 24 function balise_FORMULAIRE_FAVORI ($p) { … … 40 44 $objet = $args[0]; 41 45 $id_objet = $args[1]; 46 $categorie = $args[2]; 42 47 // pas dans une boucle ? on generera une erreur ? 43 48 if ($objet == "'balise_hors_boucle'") { 44 49 $objet = ''; 45 50 $id_objet = ''; 51 $categorie = ''; 46 52 } 47 53 48 54 // on envoie les arguments a la fonction charger 49 55 // du formulaire CVT fomulaires/favori.php 50 return array($objet, $id_objet );56 return array($objet, $id_objet,$categorie); 51 57 52 58 } -
_plugins_/mesfavoris/exemples/mesfavoris_boucle.html
r74887 r74895 3 3 <B_2> 4 4 <ul> 5 <BOUCLE_2(FAVORIS){ id_auteur ?}{id_article ?}{id_rubrique ?}>5 <BOUCLE_2(FAVORIS){categorie ?}{id_auteur ?}{id_article ?}{id_rubrique ?}> 6 6 <li>#ID_OBJET : #OBJET : #INFO_URL{#OBJET,#ID_OBJET}</li> 7 7 </BOUCLE_2> -
_plugins_/mesfavoris/formulaires/favori.php
r61801 r74895 2 2 /* 3 3 * Plugin mesfavoris 4 * (c) 2009-201 2 Olivier Sallou, Cedric Morin4 * (c) 2009-2013 Olivier Sallou, Cedric Morin, Gilles Vincent 5 5 * Distribue sous licence GPL 6 6 * … … 10 10 11 11 /** 12 * 12 * Charger du formulaire CVT 13 * Les arguments sont déterminés par la fonction balise_FORMULAIRE_FAVORI_stat() 14 * 13 15 * @param string $objet 14 16 * @param int $id_objet 17 * @param string $categorie 15 18 * @return array 16 19 */ 17 function formulaires_favori_charger_dist($objet, $id_objet ){20 function formulaires_favori_charger_dist($objet, $id_objet, $categorie){ 18 21 $valeur = array( 19 22 'editable'=>true, … … 29 32 else { 30 33 include_spip('inc/mesfavoris'); 31 $favori = mesfavoris_trouver($id_objet,$objet,$GLOBALS['visiteur_session']['id_auteur'] );32 if ($favori ['id_favori']){34 $favori = mesfavoris_trouver($id_objet,$objet,$GLOBALS['visiteur_session']['id_auteur'],$categorie); 35 if ($favori){ 33 36 $valeur['_deja_favori'] = true; 34 37 } … … 37 40 } 38 41 39 function formulaires_favori_traiter_dist($objet, $id_objet){ 42 /** 43 * Traiter le formulaire CVT 44 * 45 * @param string $objet 46 * @param int $id_objet 47 * @param string $categorie 48 * @return array 49 */ 50 function formulaires_favori_traiter_dist($objet, $id_objet, $categorie){ 40 51 $res = array('message_ok'=>' '); 41 52 if ($id_auteur = intval($GLOBALS['visiteur_session']['id_auteur'])){ 42 53 include_spip('inc/mesfavoris'); 43 54 if (!is_null(_request('ajouter'))){ 44 mesfavoris_ajouter($id_objet, $objet, $id_auteur );55 mesfavoris_ajouter($id_objet, $objet, $id_auteur, $categorie); 45 56 } 46 57 if (!is_null(_request('retirer'))){ 47 mesfavoris_supprimer(array('id_objet'=>$id_objet,'objet'=>$objet,'id_auteur'=>$GLOBALS['visiteur_session']['id_auteur'] ));58 mesfavoris_supprimer(array('id_objet'=>$id_objet,'objet'=>$objet,'id_auteur'=>$GLOBALS['visiteur_session']['id_auteur'],'categorie' => $categorie)); 48 59 } 49 60 } -
_plugins_/mesfavoris/inc/mesfavoris.php
r61801 r74895 2 2 /* 3 3 * Plugin mesfavoris 4 * (c) 2009-201 2 Olivier Sallou, Cedric Morin4 * (c) 2009-2013 Olivier Sallou, Cedric Morin, Gilles Vincent 5 5 * Distribue sous licence GPL 6 6 * … … 10 10 11 11 /** 12 * Supprimer un favori dont on connait l'id12 * Supprimer un ensemble de favoris dont on connait les id 13 13 * 14 14 * @param int $id_favori … … 20 20 $cond[] = "$k=".sql_quote($v); 21 21 $cond = implode(' AND ',$cond); 22 $res = sql_select('id_favori, objet,id_objet,id_auteur','spip_favoris',$cond);22 $res = sql_select('id_favori,categorie,objet,id_objet,id_auteur','spip_favoris',$cond); 23 23 include_spip('inc/invalideur'); 24 24 while ($row = sql_fetch($res)){ … … 30 30 } 31 31 32 function mesfavoris_ajouter($id_objet,$objet,$id_auteur ){32 function mesfavoris_ajouter($id_objet,$objet,$id_auteur,$categorie=""){ 33 33 if ($id_auteur 34 34 AND $id_objet = intval($id_objet) 35 35 AND preg_match(",^\w+$,",$objet)){ 36 36 37 if (!mesfavoris_trouver($id_objet,$objet,$id_auteur )){38 sql_insertq("spip_favoris",array('id_auteur'=>$id_auteur,'id_objet'=>$id_objet,' objet'=>$objet));37 if (!mesfavoris_trouver($id_objet,$objet,$id_auteur,$categorie)){ 38 sql_insertq("spip_favoris",array('id_auteur'=>$id_auteur,'id_objet'=>$id_objet,'categorie'=>$categorie,'objet'=>$objet)); 39 39 include_spip('inc/invalideur'); 40 40 suivre_invalideur("favori/$objet/$id_objet"); … … 43 43 } 44 44 else 45 spip_log("erreur ajouter favori $id_objet-$objet-$ id_auteur");45 spip_log("erreur ajouter favori $id_objet-$objet-$categorie-$id_auteur"); 46 46 } 47 47 48 function mesfavoris_trouver($id_objet,$objet,$id_auteur ){48 function mesfavoris_trouver($id_objet,$objet,$id_auteur,$categorie=""){ 49 49 $row = false; 50 50 if ($id_auteur=intval($id_auteur) 51 51 AND $id_objet = intval($id_objet) 52 52 AND preg_match(",^\w+$,",$objet)){ 53 $row = sql_fetsel("*","spip_favoris","id_auteur=".intval($id_auteur)." AND id_objet=".intval($id_objet)." AND objet=".sql_quote($objet) );53 $row = sql_fetsel("*","spip_favoris","id_auteur=".intval($id_auteur)." AND id_objet=".intval($id_objet)." AND objet=".sql_quote($objet)." AND categorie=".sql_quote($categorie)); 54 54 } 55 55 return $row; -
_plugins_/mesfavoris/inclure/mesfavoris.html
r71952 r74895 4 4 Distribue sous licence GPL 5 5 6 Affiche les favo irs d'un auteur particulier6 Affiche les favoris d'un auteur particulier 7 7 8 8 Paramètres possibles : … … 15 15 -* type_pagination string : le type de pagination souhaitée sinon celle par défaut de SPIP 16 16 -* sinon string : le texte à afficher dans le cas ou la liste est vide (par défaut aucun) 17 17 -* categorie string : le type de favori à afficher 18 18 ] 19 19 <B_selections> 20 <div id="selection" class="liste favoris[ (#ENV{c lass})]">20 <div id="selection" class="liste favoris[ (#ENV{categorie})][ (#ENV{class})]"> 21 21 <h2>[(#ENV{titre,<:mesfavoris:mes_favoris:>})]</h2> 22 22 [<p class="pagination">(#PAGINATION)</p>] 23 23 <ul class="liste-items"> 24 <BOUCLE_selections(FAVORIS){!par maj}{id_auteur}{ pagination #ENV{pagination,10}}>24 <BOUCLE_selections(FAVORIS){!par maj}{id_auteur}{categorie ?}{pagination #ENV{pagination,10}}> 25 25 <li class="item"> 26 26 <a href="#INFO_URL{#OBJET,#ID_OBJET}">#INFO_TITRE{#OBJET,#ID_OBJET}</a> 27 <span class="date"><span class="sep"> - </span>[<:mesfavoris:ajoute_le:> (#MAJ|affdate_court)] </span>27 <span class="date"><span class="sep"> - </span>[<:mesfavoris:ajoute_le:> (#MAJ|affdate_court)] [dans la catégorie (#CATEGORIE)]</span> 28 28 [(#ENV{bouton_suppression,oui}|=={non}|non) 29 29 [(#AUTORISER{modifier,favori,#ID_FAVORI}|oui)[(#BOUTON_ACTION{<:mesfavoris:remove:>,#URL_ACTION_AUTEUR{supprimer_favori,#ID_FAVORI,#SELF},ajax})]]] -
_plugins_/mesfavoris/mesfavoris_administrations.php
r67764 r74895 2 2 /** 3 3 * Plugin mesfavoris 4 * (c) 2009-201 2 Olivier Sallou, Cedric Morin4 * (c) 2009-2013 Olivier Sallou, Cedric Morin, Gilles Vincent 5 5 * Distribue sous licence GPL 6 6 * … … 9 9 if (!defined("_ECRIRE_INC_VERSION")) return; 10 10 11 /** 12 * Déclaration de l'index de $tables_principales qui sera utilisé dans les 'spip_' 13 * 14 * @param array $interface Array contenant les infos des tables visibles par recherche sur 'spip_bidule' 15 * @return array Cet Array de description modifié 16 */ 11 17 function mesfavoris_declarer_tables_interfaces($interface){ 12 // 'spip_' dans l'index de $tables_principales13 18 $interface['table_des_tables']['favoris']='favoris'; 14 15 19 return $interface; 16 20 } … … 28 32 "id_objet" => "bigint(21) DEFAULT '0' NOT NULL", 29 33 "objet" => "VARCHAR (25) DEFAULT '' NOT NULL", 34 "categorie" => "VARCHAR (25) DEFAULT '' NOT NULL", 30 35 "maj" => "TIMESTAMP" 31 36 ); … … 36 41 "KEY id_auteur" => "id_auteur", 37 42 "KEY id_objet" => "id_objet", 38 "KEY objet" => "objet" 43 "KEY objet" => "objet", 44 "KEY categorie" => "categorie", 39 45 ); 40 46 … … 80 86 ecrire_meta($nom_meta_base_version,$current_version="1.1.0",'non'); 81 87 } 88 if (version_compare($current_version,'1.2.0','<')){ 89 sql_alter("TABLE spip_favoris ADD COLUMN categorie VARCHAR(50) DEFAULT '' NOT NULL"); 90 sql_alter("TABLE spip_favoris ADD INDEX categorie (categorie)"); 91 ecrire_meta($nom_meta_base_version,$current_version="1.2.0",'non'); 92 } 82 93 } 83 94 } -
_plugins_/mesfavoris/mesfavoris_autoriser.php
r64341 r74895 2 2 /** 3 3 * Plugin mesfavoris 4 * (c) 2009-201 2 Olivier Sallou, Cedric Morin4 * (c) 2009-2013 Olivier Sallou, Cedric Morin, Gilles Vincent 5 5 * Distribue sous licence GPL 6 6 * … … 12 12 function mesfavoris_autoriser(){} 13 13 14 /** 15 * Contrôle l'accès sur la modification d'un favori via le plugin 16 * Ici les admins (non restreint) ont tous les droits 17 * Et les auteurs peuvent modifier leurs favoris 18 * 19 * @param string $faire Action 20 * @param string $type Type d'objet 21 * @param integer $id id de l'objet 22 * @param array $qui celui qui veut réaliser l'action $faire sur l'objet 23 * @param array $opt 24 * @return boolean true si la modification est possible 25 */ 14 26 function autoriser_favori_modifier_dist($faire, $type, $id, $qui, $opt) { 15 27 if ($qui['statut'] == '0minirezo' AND !$qui['restreint']) -
_plugins_/mesfavoris/paquet.xml
r71952 r74895 2 2 prefix="mesfavoris" 3 3 categorie="navigation" 4 version="2. 3.4"5 etat=" stable"4 version="2.4.0" 5 etat="test" 6 6 compatibilite="[2.0.0;3.0.99]" 7 7 logo="images/mesfavoris-128.png" 8 schema="1. 1.0"8 schema="1.2.0" 9 9 documentation="http://www.spip-contrib.net/Mes-Favoris-2-0" 10 10 > … … 14 14 15 15 <auteur>Olivier Sallou</auteur> 16 <auteur lien="yterium.net">Cédric Morin</auteur> 16 <auteur lien="http://www.yterium.net">Cédric Morin</auteur> 17 <auteur lien="http://www.tech-nova.fr">Gilles Vincent</auteur> 17 18 18 19 <pipeline nom="declarer_tables_principales" inclure="mesfavoris_administrations.php" /> -
_plugins_/mesfavoris/plugin.xml
r71952 r74895 3 3 <slogan>Sélection de favoris</slogan> 4 4 <icon>images/mesfavoris-128.png</icon> 5 <version>2. 3.4</version>6 <version_base>1. 1.0</version_base>7 <etat> stable</etat>5 <version>2.4.0</version> 6 <version_base>1.2.0</version_base> 7 <etat>test</etat> 8 8 <prefix>mesfavoris</prefix> 9 <auteur>Olivier Sallou, [Cédric Morin-> yterium.net]</auteur>9 <auteur>Olivier Sallou, [Cédric Morin->http://www.yterium.net], [Gilles Vincent->http://www.tech-nova.fr]</auteur> 10 10 <description>(Dé)Sélectionne un objet pour gérer des objets (articles, rubriques ...) favoris pour un visiteur authentifié</description> 11 11 <install>mesfavoris_administrations.php</install>
Note: See TracChangeset
for help on using the changeset viewer.