Carnet Wiki

Ajouter le suivi de révision à un objet SPIP

Version 2 — May 2014 erational

Astuce fournie par Ladnet sur IRC
Voici une explication rapide de l’API révision de SPIP

Méthode

Après avoir mis à jour votre objet SPIP via un sql_updateq, vous pouvez intégrer ces mises à jour dans les révisions de l’objet

  include_spip('inc/modifier'); 
  revision_objet('nom_objet', $id_objet, $sql_upd); 

Important: il faut que le suivi de révisions soit activé sur l’objet (à gérer dans le menu configuration de votre site)

Exemple

J’ai un formulaire CVT qui met à jour des recettes

// TRAITER
function formulaires_porteur_edit_projet_traiter_dist() {
 
  $message_cvt = "(Aucun traitement)";
 
  // recuperer donnees ...et construit une requette
  $sql = array();
  // .... vos traitements
  $sql['titre'] = $titre;
  $sql['ingredients'] = $ingrediants;
 
 
  if (sql_updateq("spip_recettes", $sql, "id_recette='$id_recette'"))
                           $message_cvt = "Campagne de dons  mis à jour avec succès";
 
  // bonus: on ajoute aux suivis de revision
  include_spip('inc/modifier'); 
  revision_objet('recette', $id_recette, $sql);@@@SPIP_DIFF1@@@
 
 
@@@SPIP_DIFF0@@@// message
	return array(
		"editable" => true,
		"message_ok" => "$message_cvt",
	);
}@@@SPIP_DIFF1@@@
 
 
@@@SPIP_DIFF0@@@