/_plugins_/forms/forms_et_tables_2_5/forms_pipeline.php

https://bitbucket.org/pombredanne/spip-zone-treemap · PHP · 129 lines · 109 code · 7 blank · 13 comment · 22 complexity · fa4e6b74638da6706135b7656deba379 MD5 · raw file

  1. <?php
  2. /*
  3. * forms
  4. * Gestion de formulaires editables dynamiques
  5. *
  6. * Auteurs :
  7. * Sylvain BLANC
  8. * Loic LE MAO
  9. * Antoine Pitrou
  10. * Cedric Morin
  11. * Renato Formato
  12. * � 2005,2006 - Distribue sous licence GNU/GPL
  13. *
  14. */
  15. if (!defined('_DIR_PLUGIN_FORMS')){
  16. $p=explode(basename(_DIR_PLUGINS)."/",str_replace('\\','/',realpath(dirname(__FILE__))));
  17. define('_DIR_PLUGIN_FORMS',(_DIR_PLUGINS.end($p))."/");
  18. }
  19. function Forms_affiche_milieu($flux) {
  20. $exec = $flux['args']['exec'];
  21. $config = unserialize(isset($GLOBALS['meta']['forms_et_tables'])?$GLOBALS['meta']['forms_et_tables']:"");
  22. switch ($exec){
  23. case 'articles' :
  24. $liste_type = (isset($GLOBALS['forms_type_associer']['article'])?$GLOBALS['forms_type_associer']['article']:array());
  25. if (isset($config['associer_donnees_articles']) AND $config['associer_donnees_articles'])
  26. $liste_type = array_merge($liste_type,array('table'));
  27. if (count($liste_type)){
  28. include_spip('base/forms_base_api');
  29. foreach($liste_type as $type)
  30. if (count(Forms_liste_tables($type))){
  31. $id_article = $flux['args']['id_article'];
  32. $forms_lier_donnees = charger_fonction('forms_lier_donnees','inc');
  33. $flux['data'] .= "<div id='forms_lier_donnees'>";
  34. $flux['data'] .= $forms_lier_donnees('article',$id_article, $exec, false, $type);
  35. $flux['data'] .= "</div>";
  36. }
  37. }
  38. break;
  39. case 'naviguer':
  40. $liste_type = (isset($GLOBALS['forms_type_associer']['rubrique'])?$GLOBALS['forms_type_associer']['rubrique']:array());
  41. if (isset($config['associer_donnees_rubriques']) AND $config['associer_donnees_rubriques'])
  42. $liste_type = array_merge($liste_type,array('table'));
  43. $id_rubrique = $flux['args']['id_rubrique'];
  44. if (count($liste_type) && $id_rubrique){
  45. include_spip('base/forms_base_api');
  46. foreach($liste_type as $type)
  47. if (count(Forms_liste_tables($type))){
  48. $forms_lier_donnees = charger_fonction('forms_lier_donnees','inc');
  49. $flux['data'] .= "<div id='forms_lier_donnees'>";
  50. $flux['data'] .= $forms_lier_donnees('rubrique',$id_rubrique, $exec, false, $type);
  51. $flux['data'] .= "</div>";
  52. }
  53. }
  54. break;
  55. case 'auteur_infos':
  56. $liste_type = (isset($GLOBALS['forms_type_associer']['auteur'])?$GLOBALS['forms_type_associer']['auteur']:array());
  57. if (isset($config['associer_donnees_auteurs']) AND $config['associer_donnees_auteurs'])
  58. $liste_type = array_merge($liste_type,array('table'));
  59. if (count($liste_type)){
  60. include_spip('base/forms_base_api');
  61. foreach($liste_type as $type)
  62. if (count(Forms_liste_tables($type))){
  63. $id_auteur = $flux['args']['id_auteur'];
  64. $forms_lier_donnees = charger_fonction('forms_lier_donnees','inc');
  65. $flux['data'] .= "<div id='forms_lier_donnees'>";
  66. $flux['data'] .= $forms_lier_donnees('auteur',$id_auteur, $exec, false, $type);
  67. $flux['data'] .= "</div>";
  68. }
  69. }
  70. break;
  71. }
  72. return $flux;
  73. }
  74. function Forms_affiche_droite($flux){
  75. if (_request('exec')=='article_edit'){
  76. include_spip('inc/forms');
  77. $flux['data'] .= Forms_afficher_insertion_formulaire($flux['args']['id_article']);
  78. }
  79. return $flux;
  80. }
  81. function Forms_header_prive($flux){
  82. if ($f=find_in_path('spip_forms_prive.css'))
  83. $flux .= "<link rel='stylesheet' href='$f' type='text/css' media='all' />\n";
  84. else
  85. $flux .= "<link rel='stylesheet' href='"._DIR_PLUGIN_FORMS."spip_forms.css' type='text/css' media='all' />\n";
  86. $flux .= "<link rel='stylesheet' href='"._DIR_PLUGIN_FORMS."donnee_voir.css' type='text/css' media='all' />\n";
  87. $flux .= "<link rel='stylesheet' href='"._DIR_PLUGIN_FORMS."donnees_tous.css' type='text/css' media='all' />\n";
  88. $flux .= "<link rel='stylesheet' href='"._DIR_PLUGIN_FORMS."img_pack/date_picker.css' type='text/css' media='all' />\n";
  89. $flux .= "<link rel='stylesheet' href='"._DIR_PLUGIN_FORMS."img_pack/jtip.css' type='text/css' media='all' />\n";
  90. $flux .= "<link rel='stylesheet' href='"._DIR_PLUGIN_FORMS."img_pack/style_correction_spip3.css' type='text/css' media='all' />\n";
  91. $flux .= "<script type='text/javascript'><!--\n var ajaxcharset='utf-8';\n//--></script>";
  92. if (in_array(_request('exec'),array('articles','donnees_edit'))){
  93. $flux .= "<script src='".find_in_path('javascript/iautocompleter.js')."' type='text/javascript'></script>\n";
  94. $flux .= "<script src='".find_in_path('javascript/interface.js')."' type='text/javascript'></script>\n";
  95. if (!_request('var_noajax'))
  96. $flux .= "<script src='"._DIR_PLUGIN_FORMS."javascript/forms_lier_donnees.js' type='text/javascript'></script>\n";
  97. }
  98. if (_request('exec')=='forms_edit'){
  99. $flux .= "<script src='"._DIR_PLUGIN_FORMS."javascript/interface.js' type='text/javascript'></script>";
  100. if (!_request('var_noajax')){
  101. $flux .= "<script src='"._DIR_PLUGIN_FORMS."javascript/forms_edit.js' type='text/javascript'></script>";
  102. }
  103. $flux .= "<link rel='stylesheet' href='"._DIR_PLUGIN_FORMS."spip_forms_edit.css' type='text/css' media='all' />\n";
  104. if($GLOBALS['meta']['multi_rubriques']=="oui" || $GLOBALS['meta']['multi_articles']=="oui")
  105. $active_langs = "'".str_replace(",","','",$GLOBALS['meta']['langues_multilingue'])."'";
  106. else
  107. $active_langs = "";
  108. $flux .= "<script src='".find_in_path('forms_lang.js')."' type='text/javascript'></script>\n".
  109. "<script type='text/javascript'>\n".
  110. "var forms_def_lang='".$GLOBALS["spip_lang"]."';var forms_avail_langs=[$active_langs];\n".
  111. "$(forms_init_lang);\n".
  112. "</script>\n";
  113. }
  114. if (_request('exec')=='donnees_edit'){
  115. $flux .= "<link rel='stylesheet' href='"._DIR_PLUGIN_FORMS."img_pack/donnees_edit.css' type='text/css' media='all' />\n";
  116. $flux .= "<script src='"._DIR_PLUGIN_FORMS."javascript/interface.js' type='text/javascript'></script>";
  117. if (!_request('var_noajax'))
  118. $flux .= "<script src='"._DIR_PLUGIN_FORMS."javascript/donnees_edit.js' type='text/javascript'></script>";
  119. }
  120. return $flux;
  121. }
  122. ?>