No Description
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

petitions_pipelines.php 2.0KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. <?php
  2. /***************************************************************************\
  3. * SPIP, Systeme de publication pour l'internet *
  4. * *
  5. * Copyright (c) 2001-2019 *
  6. * Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
  7. * *
  8. * Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
  9. * Pour plus de details voir le fichier COPYING.txt ou l'aide en ligne. *
  10. \***************************************************************************/
  11. /**
  12. * Utilisations de pipelines
  13. *
  14. * @package SPIP\Petitions\Pipelines
  15. **/
  16. if (!defined('_ECRIRE_INC_VERSION')) {
  17. return;
  18. }
  19. /**
  20. * Boite de configuration des objets articles
  21. *
  22. * @param array $flux
  23. * @return array
  24. */
  25. function petitions_afficher_config_objet($flux) {
  26. if ((($type = $flux['args']['type']) == 'article')
  27. and ($id = $flux['args']['id'])
  28. ) {
  29. if (autoriser('modererpetition', $type, $id)) {
  30. $table = table_objet($type);
  31. $id_table_objet = id_table_objet($type);
  32. $flux['data'] .= recuperer_fond("prive/configurer/petitionner", array($id_table_objet => $id));
  33. }
  34. }
  35. return $flux;
  36. }
  37. /**
  38. * Optimiser la base de données en supprimant les pétitions orphelines
  39. *
  40. * @param array $flux
  41. * @return array
  42. */
  43. function petitions_optimiser_base_disparus($flux) {
  44. $n = &$flux['data'];
  45. $mydate = $flux['args']['date'];
  46. //
  47. // Signatures poubelles
  48. //
  49. sql_delete("spip_petitions", "statut=" . sql_quote('poubelle') . " AND maj < " . sql_quote($mydate));
  50. // rejeter les signatures non confirmees trop vieilles (20jours)
  51. if (!defined('_PETITIONS_DELAI_SIGNATURES_REJETEES')) {
  52. define('_PETITIONS_DELAI_SIGNATURES_REJETEES', 20);
  53. }
  54. sql_delete("spip_signatures", "NOT (statut='publie' OR statut='poubelle') AND NOT(" . sql_date_proche('date_time',
  55. -_PETITIONS_DELAI_SIGNATURES_REJETEES, ' DAY') . ')');
  56. return $flux;
  57. }