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.

77 lines
2.2 KiB

6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
  1. <?php
  2. /**
  3. * Plugin mesfavoris
  4. * (c) 2009-2013 Olivier Sallou, Cedric Morin, Gilles Vincent
  5. * Distribue sous licence GPL
  6. *
  7. */
  8. /**
  9. * Utilisation des pipelines
  10. *
  11. * @package SPIP\Mesfavoris\Pipelines
  12. */
  13. // Sécurité
  14. if (!defined('_ECRIRE_INC_VERSION')) {
  15. return;
  16. }
  17. /**
  18. * Déclaration de l'index de $tables_principales qui sera utilisé dans les 'spip_'
  19. *
  20. * @pipeline declarer_tables_interfaces
  21. * @param array $interface Array contenant les infos des tables visibles par recherche sur 'spip_bidule'
  22. * @return array Cet Array de description modifié
  23. */
  24. function mesfavoris_declarer_tables_interfaces($interface) {
  25. $interface['table_des_tables']['favoris'] = 'favoris';
  26. return $interface;
  27. }
  28. /**
  29. * Declaration des tables principales
  30. *
  31. * @pipeline declarer_tables_principales
  32. * @param array $tables_principales Un array de description des tables
  33. * @return array $tables_principales L'Array de description complété
  34. */
  35. function mesfavoris_declarer_tables_principales($tables_principales) {
  36. $spip_favoris = array(
  37. "id_favori" => "BIGINT NOT NULL",
  38. "id_auteur" => "BIGINT DEFAULT '0' NOT NULL",
  39. "id_objet" => "BIGINT DEFAULT '0' NOT NULL",
  40. "objet" => "VARCHAR(25) DEFAULT '' NOT NULL",
  41. "categorie" => "VARCHAR(99) DEFAULT '' NOT NULL",
  42. "date_ajout" => "DATETIME DEFAULT CURRENT_TIMESTAMP NOT NULL", // MySQL>=5.6.5 ; SQLite: not NOW()
  43. "maj" => "TIMESTAMP",
  44. );
  45. $spip_favoris_key = array(
  46. "PRIMARY KEY" => "id_favori",
  47. "KEY auteur_objet" => "id_auteur,id_objet,objet",
  48. "KEY id_auteur" => "id_auteur", // un peu inutile vu qu'il y a l'index auteur_objet
  49. "KEY id_objet" => "id_objet",
  50. "KEY objet" => "objet",
  51. "KEY categorie" => "categorie",
  52. );
  53. $tables_principales['spip_favoris'] = array('field' => &$spip_favoris, 'key' => &$spip_favoris_key);
  54. return $tables_principales;
  55. }
  56. /**
  57. * Insertion dans le pipeline insert_head_css
  58. *
  59. * @pipeline insert_head_css
  60. * @param string $flux Le contenu CSS du head
  61. * @return string Le contenu CSS du head modifié
  62. */
  63. function mesfavoris_insert_head_css($flux) {
  64. $css = find_in_path("css/mesfavoris.css");
  65. $flux .= "<link rel='stylesheet' type='text/css' media='all' href='".timestamp(direction_css($css))."' />\n";
  66. return $flux;
  67. }