Changeset 41567 in spip-zone
- Timestamp:
- Oct 6, 2010, 11:55:34 AM (11 years ago)
- Location:
- _core_/plugins/mots
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
_core_/plugins/mots/action/editer_mot.php
r41559 r41567 50 50 function supprimer_mot($id_mot) { 51 51 sql_delete("spip_mots", "id_mot=".intval($id_mot)); 52 sql_delete("spip_mots_liens", "id_mot=".intval($id_mot));52 mot_dissocier($id_mot, array('*'=>'*')); 53 53 pipeline('trig_supprimer_objets_lies', 54 54 array( … … 57 57 ); 58 58 } 59 60 61 62 /** 63 * Associer un mot a des objets listes sous forme 64 * array($objet=>$id_objets,...) 65 * $id_objets peut lui meme etre un scalaire ou un tableau pour une liste d'objets du meme type 66 * 67 * on peut passer optionnellement une qualification du (des) lien(s) qui sera 68 * alors appliquee dans la foulee. 69 * En cas de lot de liens, c'est la meme qualification qui est appliquee a tous 70 * 71 * Exemples: 72 * mot_associer(3, array('auteur'=>2)); 73 * mot_associer(3, array('auteur'=>2), array('vu'=>'oui)); // ne fonctionnera pas ici car pas de champ 'vu' sur spip_mots_liens 74 * 75 * @param int $id_mot 76 * @param array $objets 77 * @param array $qualif 78 * @return string 79 */ 80 function mot_associer($id_mot,$objets, $qualif = null){ 81 include_spip('action/editer_liens'); 82 return objet_associer(array('mot'=>$id_mot), $objets, $qualif); 83 } 84 85 86 87 /** 88 * Dossocier un mot des objets listes sous forme 89 * array($objet=>$id_objets,...) 90 * $id_objets peut lui meme etre un scalaire ou un tableau pour une liste d'objets du meme type 91 * 92 * un * pour $id_mot,$objet,$id_objet permet de traiter par lot 93 * 94 * @param int $id_mot 95 * @param array $objets 96 * @return string 97 */ 98 function mot_dissocier($id_mot,$objets){ 99 include_spip('action/editer_liens'); 100 return objet_dissocier(array('mot'=>$id_mot), $objets); 101 } 102 103 /** 104 * Qualifier le lien d'un mot avec les objets listes 105 * array($objet=>$id_objets,...) 106 * $id_objets peut lui meme etre un scalaire ou un tableau pour une liste d'objets du meme type 107 * exemple : 108 * $c = array('vu'=>'oui'); 109 * un * pour $id_auteur,$objet,$id_objet permet de traiter par lot 110 * 111 * @param int $id_mot 112 * @param array $objets 113 * @param array $qualif 114 */ 115 function mot_qualifier($id_mot,$objets,$qualif){ 116 include_spip('action/editer_liens'); 117 return objet_qualifier(array('mot'=>$id_mot), $objets, $qualif); 118 } 119 120 59 121 ?> -
_core_/plugins/mots/action/editer_mots.php
r41559 r41567 31 31 $select_groupe = _request('select_groupe'); 32 32 33 include_spip('action/editer_mot'); 33 34 list($x, $id_objet, $id_mot, $table, $table_id, $objet, $nouv_mot) = $r; 34 35 if ($id_mot) { 35 36 if ($objet) { 36 37 // desassocier un/des mot d'un objet precis 37 $where = array( 38 "objet=" . sql_quote($objet), 39 "id_objet=$id_objet" 40 ); 41 if ($id_mot > 0) { 42 $where[] = "id_mot=$id_mot"; 43 } 44 sql_delete("spip_mots_liens", $where); 38 mot_dissocier($id_mot, array($objet=>$id_objet)); 45 39 } else { 46 40 // disparition complete d'un mot 47 // on ne doit plus passer ici mais dans action/supprimer_mot48 include_spip('action/editer_mot');49 41 supprimer_mot($id_mot); 50 42 } 51 43 } 52 44 if ($nouv_mot ? $nouv_mot : ($nouv_mot = _request('nouv_mot'))) { 53 $result = sql_countsel("spip_mots_liens", array( 54 "objet=" . sql_quote($objet), 55 "id_mot=".intval($nouv_mot), 56 "id_objet=$id_objet")); 57 if (!$result) 58 sql_insertq("spip_mots_liens", array('objet'=> $objet, 'id_mot' => $nouv_mot,"id_objet" =>$id_objet)); 45 mot_associer($nouv_mot, array($objet=>$id_objet)); 59 46 } 60 47 -
_core_/plugins/mots/formulaires/editer_mot.php
r41559 r41567 102 102 )); 103 103 } 104 sql_insertq("spip_mots_liens", array( 105 "objet" => $type, 106 "id_mot" => $id_mot, 107 "id_objet" => $id) 108 ); 104 include_spip('action/editer_mot'); 105 mot_associer($id_mot, array($type=>$id)); 109 106 } 110 107 -
_core_/plugins/mots/inc/editer_mots.php
r41559 r41567 66 66 { 67 67 $modifier = false; 68 68 #include_spip('action/editer_mot'); 69 69 list($reponse, $nouveaux_mots) = recherche_mot_cle($cherche_mot, $select_groupe, $objet, $id_objet, $nom, $table_id, $url_base); 70 70 foreach($nouveaux_mots as $nouv_mot) { 71 71 if ($nouv_mot!='x') { 72 #$modifier |= mot_associer($nouv_mot, array($objet=>$id_objet)); 72 73 $modifier |= inserer_mot($objet, $table_id, $id_objet, $nouv_mot); 73 74 } … … 87 88 return $reponse; 88 89 } 90 89 91 // http://doc.spip.org/@inserer_mot 92 // pour compatibilite 90 93 function inserer_mot($objet, $id_objet, $id_mot) 91 94 { 95 /* 96 include_spip('action/editer_mot'); 97 return mot_associer($id_mot, array($objet=>$id_objet)); 98 */ 92 99 $r = sql_countsel('spip_mots_liens', array("id_mot=$id_mot", "objet=".sql_quote($objet), "id_objet=$id_objet")); 93 100 if (!$r) {
Note: See TracChangeset
for help on using the changeset viewer.