actualiser_depot.php 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. <?php
  2. /**
  3. * Gestion de l'action actualiser_depot
  4. *
  5. * @plugin SVP pour SPIP
  6. * @license GPL
  7. * @package SPIP\SVP\Actions
  8. */
  9. /**
  10. * Action de mise à jour en base de données de la liste des plugins
  11. * d'un ou de tous les dépots
  12. */
  13. function action_actualiser_depot_dist(){
  14. // Securisation: aucun argument attendu
  15. $securiser_action = charger_fonction('securiser_action', 'inc');
  16. $arg = $securiser_action();
  17. // Verification des autorisations
  18. if (!autoriser('webmestre')) {
  19. include_spip('inc/minipres');
  20. echo minipres();
  21. exit();
  22. }
  23. // Actualisation des plugins du depot ou de tous les plugins suivant l'argument de l'action
  24. // Le depot lui-meme n'est mis a jour que partiellement via le fichier XML une fois que
  25. // la premiere insertion a ete effectuee. En effet, seules les infos non editables dans le prive
  26. // peuvent etre actualisees lors de cette action
  27. include_spip('inc/svp_depoter_distant');
  28. if ($arg === 'tout') {
  29. if ($ids_depots = sql_allfetsel('id_depot', 'spip_depots')) {
  30. $ids_depots = array_map('reset', $ids_depots);
  31. foreach ($ids_depots as $_id_depot)
  32. svp_actualiser_depot($_id_depot);
  33. // On consigne l'action
  34. spip_log("ACTION ACTUALISER TOUS LES DEPOTS (manuel)", 'svp_actions.' . _LOG_INFO);
  35. }
  36. }
  37. else if ($id_depot = intval($arg)) {
  38. svp_actualiser_depot($id_depot);
  39. // On consigne l'action
  40. spip_log("ACTION ACTUALISER DEPOT (manuel) : id_depot = ". $id_depot, 'svp_actions.' . _LOG_INFO);
  41. }
  42. }
  43. ?>