*/ // must be run within Dokuwiki if (!defined("DOKU_INC")) { die(); } if (!defined("DOKU_LF")) { define("DOKU_LF", "\n"); } if (!defined("DOKU_TAB")) { define("DOKU_TAB", "\t"); } if (!defined("DOKU_PLUGIN")) { define("DOKU_PLUGIN", DOKU_INC . "lib/plugins/"); } require_once DOKU_PLUGIN . "syntax.php"; class syntax_plugin_survey_survey extends DokuWiki_Syntax_Plugin { public $readingEnabled = false; public $readingTemp = ""; public $surveyNumber = 0; public function getType() { return "protected"; } public function getPType() { return "normal"; } public function getSort() { return 35; } public function connectTo($mode) { $this->Lexer->addEntryPattern( "", $mode, "plugin_survey_survey" ); } public function postConnect() { $this->Lexer->addExitPattern("", "plugin_survey_survey"); } public function handle($match, $state, $pos, Doku_Handler $handler) { switch ($state) { case DOKU_LEXER_ENTER: $this->readingTemp = ""; break; case DOKU_LEXER_EXIT: return [$this->readingTemp]; case DOKU_LEXER_UNMATCHED: $this->readingTemp .= $match; break; } return []; } public function render($format, Doku_Renderer $renderer, $data) { if ($mode != "xhtml") { return false; } if (count($data) > 0) { $helper = plugin_load("helper", "survey_survey"); $surveySyntax = $helper->sanitizeSyntax($data[0]); $survey = $helper->interpretSurvey($surveySyntax); $renderer->doc .= '
\n"; $renderer->doc .= "

\n"; $renderer->doc .= "

\n"; $renderer->doc .= "

\n"; $renderer->doc .= "

"; $renderer->doc .= "\n"; $this->surveyNumber++; } return true; } }