Carnet Wiki

Ajouter le suivi de révision à un objet SPIP

Version 3 — Mai 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_recette_edit_traiter_dist 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'] = $ingredients $ingrediants ;
 
    
  if (sql_updateq("spip_recettes", $sql, "id_recette='$id_recette'"))
                           $message_cvt = "Recette   mise  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);


// message
	return array(
		"editable" => true,
		"message_ok" => "$message_cvt",
	);
}