Source for file viewer.php

Documentation is available at viewer.php

  1. <?php
  2.  
  3. class de_linkm_collector_viewer {
  4.  
  5. var $_topic;
  6. var $_config;
  7. var $_categories;
  8. var $_l10n;
  9. var $_datamanager;
  10. var $_l10nmidcom;
  11. var $errcode;
  12. var $errstr;
  13.  
  14. function de_linkm_collector_viewer ($topic, $config) {
  15. $this->_topic = $topic;
  16. $this->_config = $GLOBALS['de_linkm_collector__default_config'];
  17. $this->_config->store($config->get_all());
  18. $this->errcode = MIDCOM_ERROK;
  19. $this->errstr = "";
  20. $i18n =& $GLOBALS["midcom"]->get_service("i18n");
  21. $this->_l10n =& $i18n->get_l10n("de.linkm.collector");
  22. $this->_l10nmidcom =& $i18n->get_l10n("midcom");
  23. }
  24. function can_handle ($argc, $argv) {
  25. if ($argc == 0)
  26. return true;
  27. return false;
  28. }
  29.  
  30. function handle ($argc, $argv) {
  31. $this->_load_categories();
  32. $this->_datamanager = new midcom_helper_datamanager ($this->_config->get("schemadb"));
  33. if ($this->_datamanager == false) {
  34. $this->errstr = "Could not create layout, see Debug Log";
  35. $this->errcode = MIDCOM_ERRCRIT;
  36. debug_add($this->errstr, MIDCOM_LOGCRIT);
  37. return false;
  38. }
  39. if ($this->_datamanager->init($this->_topic) == false) {
  40. $this->errstr = "Could not create layout, see Debug Log";
  41. $this->errcode = MIDCOM_ERRCRIT;
  42. debug_add($this->errstr, MIDCOM_LOGCRIT);
  43. return false;
  44. }
  45. $GLOBALS['midcom']->set_pagetitle($this->_topic->extra);
  46. return true;
  47. }
  48.  
  49. function show () {
  50. $GLOBALS["view_cat"] = $this->_categories;
  51. $GLOBALS["view_l10n"] =& $this->_l10n;
  52. $GLOBALS["view_l10nmidcom"] =& $this->_l10nmidcom;
  53. $GLOBALS["view"] = $this->_datamanager->get_array();
  54. midcom_show_style("index");
  55. }
  56.  
  57. function get_metadata() {
  58. return Array(
  59. MIDCOM_META_CREATOR => 0,
  60. MIDCOM_META_CREATED => 0,
  61. MIDCOM_META_EDITOR => 0,
  62. MIDCOM_META_EDITED => 0
  63. );
  64. }
  65.  
  66. function _load_categories() {
  67. $this->_categories = Array();
  68. $contextid = $GLOBALS["midcom"]->get_current_context();
  69. $nap = new midcom_helper_nav($contextid);
  70. $subnodeids = $nap->list_nodes($this->_topic->id);
  71. if (count($subnodeids)>0)
  72. foreach ($subnodeids as $id) {
  73. $topic = mgd_get_topic($id);
  74. if ($topic->parameter("de.linkm.collector","id") != $this->_config->get("id"))
  75. continue;
  76. $node = $nap->get_node($id);
  77. $this->_categories[$id] = Array(
  78. "name" => $node[MIDCOM_NAV_NAME],
  79. "url" => substr($node[MIDCOM_NAV_URL],0,-1)
  80. );
  81. }
  82. }
  83.  
  84. }
  85.  
  86.  
  87.  
  88. ?>

Documentation generated on Mon, 21 Nov 2005 18:23:11 +0100 by phpDocumentor 1.3.0RC3