|
|
how ewiki operatesewiki_page() - decodes the $id and $action from the GET or POST parameters - tries to load the page from ewiki_database() - if this failed then it calls the database init function - calls some init plugins, calls the _auth() interface - chains to ["page"] plugins which activate for registered $id's - alternatively calls a plugin that was registered for $action - the default however is to render the current page via _page_view() - adds a page title - sends the generated output (view page or plugin output) back to caller (for output into yoursite.php) ewiki_page_view() - feeds the current page $data's ["content"] into ewiki_format() - also decodes a few formatting parameters (e.g. if html allowed) - returns the gererated html back ewiki_format() - beatifies the source code (unifies to plain UNIX newlines) - calls init plugins (wiki source mangling) - splits source into blocks, calls block plugins - then goes through each line of the wiki source to generate html - there is line-start, in-line and complete-markup - afterwards everything went from source into the $ooo-output var - first calls the link_pre_scan_regex (which searches for wikiwords and stores that information into $ewiki_links) - then calls the wiki-link transformation regex function - then calls post plugins and returns generated <html> ewiki_render_wiki_links() - searches for all (pre-fetched) $ewiki_links via ewiki_db::FIND() - transforms the wikiwords into html-links - with the regex and callback func: returns output back to - ewiki_format() ewiki_link_regex_callback() - transform the wiki source snippet returned from the preg_replace() call into a html link string - (complicated) ewiki_$page_plugin_*() - page plugins return html output, which usually is hardcoded as strings into them - provide some interactivity ewiki_$action_plugins_*() - activate on pages with special registered $action's - provide some interactivity (for page editing for example)prev << "how ewiki operates" next >> "used variables" You cannot modify the INTERNALS file, but anyhow any ideas or suggestion should as usually get filed on BugReports, UserSuggestions or even better the INTERNALS.Discussion. |