diff --git a/_tests/tests/unit_tests/_setup_wizard.php b/_tests/tests/unit_tests/_setup_wizard.php index bb5946e1d8..bfc80e1c0a 100644 --- a/_tests/tests/unit_tests/_setup_wizard.php +++ b/_tests/tests/unit_tests/_setup_wizard.php @@ -22,7 +22,7 @@ public function testFinalStep() { global $SITE_INFO; if ((!isset($SITE_INFO['backdoor_ip'])) || ($SITE_INFO['backdoor_ip'] != '127.0.0.1')) { - warn_exit(protect_from_escaping('backdoor_ip must be set to 127.0.0.1 temporarily in _config.php, $SITE_INFO[\'backdoor_ip\'] = \'127.0.0.1\';')); + warn_exit(protect_from_escaping('backdoor_ip must be set to 127.0.0.1 temporarily until the test finishes running in _config.php, $SITE_INFO[\'backdoor_ip\'] = \'127.0.0.1\';')); } $post = array( diff --git a/_tests/tests/unit_tests/backups.php b/_tests/tests/unit_tests/backups.php index d84ad88db1..513b800870 100644 --- a/_tests/tests/unit_tests/backups.php +++ b/_tests/tests/unit_tests/backups.php @@ -62,23 +62,25 @@ public function testBackup() $config_php .= rtrim(' unset($SITE_INFO[\'base_url\']); // Let it auto-detect unset($SITE_INFO[\'cns_table_prefix\']); -$SITE_INFO[\'db_site\'] = \'test\'; -$SITE_INFO[\'db_forums\'] = \'test\'; +$SITE_INFO[\'db_site\'] = \'cms_backup_test\'; +$SITE_INFO[\'db_forums\'] = \'cms_backup_test\'; $SITE_INFO[\'table_prefix\'] = \'cms_backup_test_\'; $SITE_INFO[\'multi_lang_content\'] = \'' . addslashes($SITE_INFO['multi_lang_content']) . '\'; '); cms_file_put_contents_safe($config_path, $config_php); + $GLOBALS['SITE_DB']->query('CREATE DATABASE cms_backup_test', null, null, true); + for ($i = 0; $i < 2; $i++) { $test = http_download_file(get_base_url() . '/exports/backups/test/restore.php?time_limit=1000', null, false, false, 'Composr', array(), null, null, null, null, null, null, null, 100.0); $success = (strpos($test, do_lang('backups:BACKUP_RESTORE_SUCCESS')) !== false); - $this->assertTrue($success, 'Failed to run restorer script on iteration ' . strval($i + 1) . ' [' . $test . ']'); + $this->assertTrue($success, 'Failed to run restorer script on iteration ' . strval($i + 1) . ' [' . $test . ']; to debug manually run exports/backups/test/restore.php?time_limit=1000'); if (!$success) { return; } } - $db = new DatabaseConnector('test', get_db_site_host(), get_db_site_user(), get_db_site_password(), 'cms_backup_test_'); + $db = new DatabaseConnector('cms_backup_test', get_db_site_host(), get_db_site_user(), get_db_site_password(), 'cms_backup_test_'); $count = $db->query_select_value('zones', 'COUNT(*)'); $this->assertTrue($count > 0, 'Failed to restore database'); diff --git a/_tests/tests/unit_tests/shopping.php b/_tests/tests/unit_tests/shopping.php index 9d544f6153..16185f23cd 100644 --- a/_tests/tests/unit_tests/shopping.php +++ b/_tests/tests/unit_tests/shopping.php @@ -138,7 +138,12 @@ public function testAddtoCart() public function testHandleTransaction() { - $purchase_id = strval($GLOBALS['SITE_DB']->query_select_value('shopping_order', 'max(id)', array())); + $_purchase_id = $GLOBALS['SITE_DB']->query_select_value('shopping_order', 'MAX(id)', array()); + if ($_purchase_id === null) { + $this->assertTrue(false, 'Order did not save'); + return; + } + $purchase_id = strval($_purchase_id); $item_name = lorem_phrase(); $payment_status = 'Completed'; $reason_code = ''; diff --git a/_tests/tests/unit_tests/url_management.php b/_tests/tests/unit_tests/url_management.php index e68416c10b..99e7c5043e 100644 --- a/_tests/tests/unit_tests/url_management.php +++ b/_tests/tests/unit_tests/url_management.php @@ -23,7 +23,7 @@ public function testUrlToPageLink() $zone_pathed = (get_option('collapse_user_zones') == '1') ? '' : 'site/'; $zone = (get_option('collapse_user_zones') == '1') ? '' : 'site'; - $test = url_to_page_link(get_base_url() . '/' . $zone_pathed . '/pg/downloads/browse/test?foo=bar'); + $test = url_to_page_link(get_base_url() . '/' . $zone_pathed . 'pg/downloads/browse/test?foo=bar'); $this->assertTrue($test == $zone . ':downloads:browse:test:foo=bar', 'Got wrong page-link for decode on PG scheme (' . $test . '), ' . $test); $test = url_to_page_link(get_base_url() . '/' . $zone_pathed . 'downloads/browse/test?foo=bar'); diff --git a/data_custom/functions.dat b/data_custom/functions.dat index 3e1cd9dda9..c4ce738e42 100644 --- a/data_custom/functions.dat +++ b/data_custom/functions.dat @@ -1,4 +1,4 @@ -a:1828:{s:12:"Module_admin";a:3:{s:9:"functions";a:9:{s:4:"info";a:6:{s:8:"filename";s:33:"adminzone/pages/modules/admin.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:16:"get_entry_points";a:6:{s:8:"filename";s:33:"adminzone/pages/modules/admin.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:33:"adminzone/pages/modules/admin.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:33:"adminzone/pages/modules/admin.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:9:"_synonyms";a:6:{s:8:"filename";s:33:"adminzone/pages/modules/admin.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"_synonyms";s:11:"description";s:37:"Get synonyms for Composr terminology.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:48:"Synonyms (each element is an array of synonyms).";}}s:17:"_strip_junk_words";a:6:{s:8:"filename";s:33:"adminzone/pages/modules/admin.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"words";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:12:"Input words.";s:11:"phpdoc_name";s:5:"words";}}s:4:"name";s:17:"_strip_junk_words";s:11:"description";s:57:"Strip junk words from the keywords representing a search.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:34:"Replaced, with junk words removed.";}}s:14:"_keyword_match";a:6:{s:8:"filename";s:33:"adminzone/pages/modules/admin.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"t";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"Search string.";s:11:"phpdoc_name";s:1:"t";}}s:4:"name";s:14:"_keyword_match";s:11:"description";s:44:"See if a string matches one of the keywords.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:25:"Whether there is a match.";}}s:14:"_section_match";a:6:{s:8:"filename";s:33:"adminzone/pages/modules/admin.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:19:"section_limitations";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:56:"List of sections to search (empty: search all sections).";s:11:"phpdoc_name";s:19:"section_limitations";}i:1;a:5:{s:4:"name";s:12:"results_type";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:16:"Current section.";s:11:"phpdoc_name";s:12:"results_type";}}s:4:"name";s:14:"_section_match";s:11:"description";s:51:"See if our current section is going to be searched.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:25:"Whether there is a match.";}}s:6:"search";a:6:{s:8:"filename";s:33:"adminzone/pages/modules/admin.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"search";s:11:"description";s:40:"Actualiser to perform Admin Zone search.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:10:"Interface.";}}}s:4:"name";s:12:"Module_admin";s:7:"comment";b:1;}s:22:"Module_admin_actionlog";a:3:{s:9:"functions";a:7:{s:4:"info";a:6:{s:8:"filename";s:43:"adminzone/pages/modules/admin_actionlog.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:16:"get_entry_points";a:6:{s:8:"filename";s:43:"adminzone/pages/modules/admin_actionlog.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:43:"adminzone/pages/modules/admin_actionlog.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:43:"adminzone/pages/modules/admin_actionlog.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:6:"search";a:6:{s:8:"filename";s:43:"adminzone/pages/modules/admin_actionlog.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"search";s:11:"description";s:35:"The UI to choose filter parameters.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:13:"choose_action";a:6:{s:8:"filename";s:43:"adminzone/pages/modules/admin_actionlog.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"choose_action";s:11:"description";s:69:"The UI to show a results table of moderation actions for a moderator.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:11:"view_action";a:6:{s:8:"filename";s:43:"adminzone/pages/modules/admin_actionlog.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"view_action";s:11:"description";s:55:"The UI to view details of a specific moderation action.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:22:"Module_admin_actionlog";s:7:"comment";b:1;}s:19:"Module_admin_addons";a:3:{s:9:"functions";a:24:{s:4:"info";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_addons.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:16:"get_entry_points";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_addons.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:9:"uninstall";a:5:{s:8:"filename";s:40:"adminzone/pages/modules/admin_addons.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"uninstall";s:11:"description";s:21:"Uninstall the module.";s:5:"flags";a:0:{}}s:7:"install";a:5:{s:8:"filename";s:40:"adminzone/pages/modules/admin_addons.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:12:"upgrade_from";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"What version we're upgrading from (null: new install)";s:11:"phpdoc_name";s:12:"upgrade_from";}i:1;a:7:{s:4:"name";s:17:"upgrade_from_hack";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:94:"What hack version we're upgrading from (null: new-install/not-upgrading-from-a-hacked-version)";s:11:"phpdoc_name";s:17:"upgrade_from_hack";}}s:4:"name";s:7:"install";s:11:"description";s:19:"Install the module.";s:5:"flags";a:0:{}}s:7:"pre_run";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_addons.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_addons.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:3:"gui";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_addons.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"gui";s:11:"description";s:12:"The main UI.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:12:"addon_import";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_addons.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"addon_import";s:11:"description";s:40:"The UI to get an addon from some source.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:13:"_addon_import";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_addons.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"_addon_import";s:11:"description";s:37:"The UI to retrieve a specified addon.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:12:"multi_action";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_addons.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"multi_action";s:11:"description";s:46:"The UI to confirm a combined action on addons.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:13:"_multi_action";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_addons.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"_multi_action";s:11:"description";s:54:"The actualiser to perform a combined action on addons.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:13:"addon_install";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_addons.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"addon_install";s:11:"description";s:42:"The UI to confirm the install of an addon.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:14:"_addon_install";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_addons.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"_addon_install";s:11:"description";s:35:"The actualiser to install an addon.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:15:"addon_uninstall";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_addons.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"addon_uninstall";s:11:"description";s:29:"The UI to uninstall an addon.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:16:"_addon_uninstall";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_addons.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"_addon_uninstall";s:11:"description";s:29:"The UI to uninstall an addon.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:12:"addon_export";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_addons.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"addon_export";s:11:"description";s:30:"The UI to export an addon (1).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:6:"do_dir";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_addons.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"dir";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:23:"The directory to search";s:11:"phpdoc_name";s:3:"dir";}}s:4:"name";s:6:"do_dir";s:11:"description";s:53:"(Recursively) find all files we can choose to export.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:33:"A map, path=>true (inverted list)";}}s:13:"_addon_export";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_addons.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"_addon_export";s:11:"description";s:30:"The UI to export an addon (2).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:14:"__addon_export";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_addons.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"__addon_export";s:11:"description";s:34:"The actualiser to export an addon.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:17:"modules_interface";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_addons.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"modules_interface";s:11:"description";s:46:"The UI to choose a zone (or blocks) to manage.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:12:"modules_view";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_addons.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"modules_view";s:11:"description";s:41:"The UI to manage the modules (or blocks).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:14:"upgrade_module";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_addons.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"upgrade_module";s:11:"description";s:35:"The actualiser to upgrade a module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:16:"uninstall_module";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_addons.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"uninstall_module";s:11:"description";s:37:"The actualiser to uninstall a module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:16:"reinstall_module";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_addons.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"reinstall_module";s:11:"description";s:37:"The actualiser to reinstall a module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:19:"Module_admin_addons";s:7:"comment";b:1;}s:28:"Module_admin_aggregate_types";a:3:{s:9:"functions";a:18:{s:4:"info";a:6:{s:8:"filename";s:49:"adminzone/pages/modules/admin_aggregate_types.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:9:"uninstall";a:5:{s:8:"filename";s:49:"adminzone/pages/modules/admin_aggregate_types.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"uninstall";s:11:"description";s:21:"Uninstall the module.";s:5:"flags";a:0:{}}s:7:"install";a:5:{s:8:"filename";s:49:"adminzone/pages/modules/admin_aggregate_types.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:12:"upgrade_from";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"What version we're upgrading from (null: new install)";s:11:"phpdoc_name";s:12:"upgrade_from";}i:1;a:7:{s:4:"name";s:17:"upgrade_from_hack";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:94:"What hack version we're upgrading from (null: new-install/not-upgrading-from-a-hacked-version)";s:11:"phpdoc_name";s:17:"upgrade_from_hack";}}s:4:"name";s:7:"install";s:11:"description";s:19:"Install the module.";s:5:"flags";a:0:{}}s:16:"get_entry_points";a:6:{s:8:"filename";s:49:"adminzone/pages/modules/admin_aggregate_types.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:49:"adminzone/pages/modules/admin_aggregate_types.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:9:"top_level";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:77:"Whether this is running at the top level, prior to having sub-objects called.";s:11:"phpdoc_name";s:9:"top_level";}i:1;a:7:{s:4:"name";s:4:"type";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:80:"The screen type to consider for metadata purposes (null: read from environment).";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:9:"run_start";a:6:{s:8:"filename";s:49:"adminzone/pages/modules/admin_aggregate_types.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:28:"The type of module execution";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:9:"run_start";s:11:"description";s:31:"Standard crud_module run_start.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:21:"The output of the run";}}s:6:"browse";a:6:{s:8:"filename";s:49:"adminzone/pages/modules/admin_aggregate_types.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"browse";s:11:"description";s:48:"The do-next manager for before setup management.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:15:"get_form_fields";a:6:{s:8:"filename";s:49:"adminzone/pages/modules/admin_aggregate_types.php";s:10:"parameters";a:3:{i:0;a:7:{s:4:"name";s:14:"aggregate_type";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:37:"The aggregate type (blank: ask first)";s:11:"phpdoc_name";s:14:"aggregate_type";}i:1;a:7:{s:4:"name";s:15:"aggregate_label";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:26:"The label for the instance";s:11:"phpdoc_name";s:15:"aggregate_label";}i:2;a:7:{s:4:"name";s:16:"other_parameters";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:44:"Other parameters (null: no values known yet)";s:11:"phpdoc_name";s:16:"other_parameters";}}s:4:"name";s:15:"get_form_fields";s:11:"description";s:63:"Get Tempcode for a forum grouping template adding/editing form.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:71:"Either Tempcode; or a tuple: form fields, hidden fields, delete fields.";}}s:34:"create_selection_list_choose_table";a:6:{s:8:"filename";s:49:"adminzone/pages/modules/admin_aggregate_types.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"url_map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:55:"Details to go to build_url for link to the next screen.";s:11:"phpdoc_name";s:7:"url_map";}}s:4:"name";s:34:"create_selection_list_choose_table";s:11:"description";s:36:"Standard crud_module table function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:104:"A quartet: The choose table, Whether re-ordering is supported from this screen, Search URL, Archive URL.";}}s:17:"fill_in_edit_form";a:6:{s:8:"filename";s:49:"adminzone/pages/modules/admin_aggregate_types.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:3:"_id";}}s:4:"name";s:17:"fill_in_edit_form";s:11:"description";s:38:"Standard crud_module edit form filler.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:46:"A triple: fields, hidden-fields, delete-fields";}}s:19:"_read_in_parameters";a:6:{s:8:"filename";s:49:"adminzone/pages/modules/admin_aggregate_types.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"_read_in_parameters";s:11:"description";s:38:"Read in parameters for adding/editing.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:10:"Parameters";}}s:17:"add_actualisation";a:6:{s:8:"filename";s:49:"adminzone/pages/modules/admin_aggregate_types.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"add_actualisation";s:11:"description";s:36:"Standard crud_module add actualiser.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The entry added";}}s:18:"edit_actualisation";a:5:{s:8:"filename";s:49:"adminzone/pages/modules/admin_aggregate_types.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:18:"edit_actualisation";s:11:"description";s:37:"Standard crud_module edit actualiser.";s:5:"flags";a:0:{}}s:20:"delete_actualisation";a:5:{s:8:"filename";s:49:"adminzone/pages/modules/admin_aggregate_types.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"The entry being deleted";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:20:"delete_actualisation";s:11:"description";s:39:"Standard crud_module delete actualiser.";s:5:"flags";a:0:{}}s:3:"xml";a:6:{s:8:"filename";s:49:"adminzone/pages/modules/admin_aggregate_types.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"xml";s:11:"description";s:44:"The UI to edit the aggregate_types XML file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:4:"_xml";a:6:{s:8:"filename";s:49:"adminzone/pages/modules/admin_aggregate_types.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"_xml";s:11:"description";s:52:"The UI actualiser edit the aggregate_types XML file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:4:"sync";a:6:{s:8:"filename";s:49:"adminzone/pages/modules/admin_aggregate_types.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"sync";s:11:"description";s:70:"The UI to start a synchronisation of aggregate content type instances.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:5:"_sync";a:6:{s:8:"filename";s:49:"adminzone/pages/modules/admin_aggregate_types.php";s:10:"parameters";a:0:{}s:4:"name";s:5:"_sync";s:11:"description";s:78:"The actualiser to start a synchronisation of aggregate content type instances.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:28:"Module_admin_aggregate_types";s:7:"comment";b:1;}s:19:"Module_admin_awards";a:3:{s:9:"functions";a:14:{s:4:"info";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_awards.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:9:"uninstall";a:5:{s:8:"filename";s:40:"adminzone/pages/modules/admin_awards.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"uninstall";s:11:"description";s:21:"Uninstall the module.";s:5:"flags";a:0:{}}s:7:"install";a:5:{s:8:"filename";s:40:"adminzone/pages/modules/admin_awards.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:12:"upgrade_from";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"What version we're upgrading from (null: new install)";s:11:"phpdoc_name";s:12:"upgrade_from";}i:1;a:7:{s:4:"name";s:17:"upgrade_from_hack";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:94:"What hack version we're upgrading from (null: new-install/not-upgrading-from-a-hacked-version)";s:11:"phpdoc_name";s:17:"upgrade_from_hack";}}s:4:"name";s:7:"install";s:11:"description";s:19:"Install the module.";s:5:"flags";a:0:{}}s:16:"get_entry_points";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_awards.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_awards.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:9:"top_level";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:77:"Whether this is running at the top level, prior to having sub-objects called.";s:11:"phpdoc_name";s:9:"top_level";}i:1;a:7:{s:4:"name";s:4:"type";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:80:"The screen type to consider for metadata purposes (null: read from environment).";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:9:"run_start";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_awards.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:28:"The type of module execution";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:9:"run_start";s:11:"description";s:31:"Standard crud_module run_start.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:21:"The output of the run";}}s:6:"browse";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_awards.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"browse";s:11:"description";s:50:"The do-next manager for before content management.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:34:"create_selection_list_choose_table";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_awards.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"url_map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:55:"Details to go to build_url for link to the next screen.";s:11:"phpdoc_name";s:7:"url_map";}}s:4:"name";s:34:"create_selection_list_choose_table";s:11:"description";s:36:"Standard crud_module table function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:76:"A pair: The choose table, Whether re-ordering is supported from this screen.";}}s:15:"get_form_fields";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_awards.php";s:10:"parameters";a:7:{i:0;a:7:{s:4:"name";s:2:"id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:41:"The ID of the award (null: not added yet)";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:5:"title";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:9:"The title";s:11:"phpdoc_name";s:5:"title";}i:2;a:7:{s:4:"name";s:11:"description";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:15:"The description";s:11:"phpdoc_name";s:11:"description";}i:3;a:7:{s:4:"name";s:6:"points";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:40:"How many points are given to the awardee";s:11:"phpdoc_name";s:6:"points";}i:4;a:7:{s:4:"name";s:12:"content_type";s:7:"default";s:8:"download";s:11:"default_raw";s:10:"'download'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:38:"The content type the award type is for";s:11:"phpdoc_name";s:12:"content_type";}i:5;a:7:{s:4:"name";s:12:"hide_awardee";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:86:"Whether to not show the awardee when displaying this award (null: statistical default)";s:11:"phpdoc_name";s:12:"hide_awardee";}i:6;a:7:{s:4:"name";s:17:"update_time_hours";s:7:"default";i:168;s:11:"default_raw";s:3:"168";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:66:"The approximate time in hours between awards (e.g. 168 for a week)";s:11:"phpdoc_name";s:17:"update_time_hours";}}s:4:"name";s:15:"get_form_fields";s:11:"description";s:37:"Get Tempcode for adding/editing form.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:39:"A pair: The input fields, Hidden fields";}}s:29:"create_selection_list_entries";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_awards.php";s:10:"parameters";a:0:{}s:4:"name";s:29:"create_selection_list_entries";s:11:"description";s:35:"Standard crud_module list function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:18:"The selection list";}}s:17:"fill_in_edit_form";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_awards.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:17:"fill_in_edit_form";s:11:"description";s:38:"Standard crud_module edit form filler.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:39:"A pair: The input fields, Hidden fields";}}s:17:"add_actualisation";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_awards.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"add_actualisation";s:11:"description";s:36:"Standard crud_module add actualiser.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The entry added";}}s:18:"edit_actualisation";a:5:{s:8:"filename";s:40:"adminzone/pages/modules/admin_awards.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:18:"edit_actualisation";s:11:"description";s:37:"Standard crud_module edit actualiser.";s:5:"flags";a:0:{}}s:20:"delete_actualisation";a:5:{s:8:"filename";s:40:"adminzone/pages/modules/admin_awards.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"The entry being deleted";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:20:"delete_actualisation";s:11:"description";s:39:"Standard crud_module delete actualiser.";s:5:"flags";a:0:{}}}s:4:"name";s:19:"Module_admin_awards";s:7:"comment";b:1;}s:19:"Module_admin_backup";a:3:{s:9:"functions";a:11:{s:4:"info";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_backup.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:16:"get_entry_points";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_backup.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:9:"uninstall";a:5:{s:8:"filename";s:40:"adminzone/pages/modules/admin_backup.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"uninstall";s:11:"description";s:21:"Uninstall the module.";s:5:"flags";a:0:{}}s:7:"install";a:5:{s:8:"filename";s:40:"adminzone/pages/modules/admin_backup.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:12:"upgrade_from";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"What version we're upgrading from (null: new install)";s:11:"phpdoc_name";s:12:"upgrade_from";}i:1;a:7:{s:4:"name";s:17:"upgrade_from_hack";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:94:"What hack version we're upgrading from (null: new-install/not-upgrading-from-a-hacked-version)";s:11:"phpdoc_name";s:17:"upgrade_from_hack";}}s:4:"name";s:7:"install";s:11:"description";s:19:"Install the module.";s:5:"flags";a:0:{}}s:7:"pre_run";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_backup.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_backup.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:16:"backup_interface";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_backup.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"backup_interface";s:11:"description";s:22:"The UI to do a backup.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:11:"get_results";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_backup.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_results";s:11:"description";s:55:"Helper function to find information about past backups.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:11:"make_backup";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_backup.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"make_backup";s:11:"description";s:33:"The actualiser to start a backup.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:14:"confirm_delete";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_backup.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"confirm_delete";s:11:"description";s:44:"The UI to confirm deletion of a backup file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:6:"delete";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_backup.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"delete";s:11:"description";s:39:"The actualiser to delete a backup file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:19:"Module_admin_backup";s:7:"comment";b:1;}s:20:"Module_admin_banners";a:3:{s:9:"functions";a:5:{s:4:"info";a:6:{s:8:"filename";s:41:"adminzone/pages/modules/admin_banners.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:16:"get_entry_points";a:6:{s:8:"filename";s:41:"adminzone/pages/modules/admin_banners.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:41:"adminzone/pages/modules/admin_banners.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:41:"adminzone/pages/modules/admin_banners.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:17:"banner_statistics";a:6:{s:8:"filename";s:41:"adminzone/pages/modules/admin_banners.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"banner_statistics";s:11:"description";s:60:"The UI to show a results table of banner details/statistics.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:20:"Module_admin_banners";s:7:"comment";b:1;}s:17:"Module_admin_chat";a:3:{s:9:"functions";a:12:{s:16:"get_entry_points";a:6:{s:8:"filename";s:38:"adminzone/pages/modules/admin_chat.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:38:"adminzone/pages/modules/admin_chat.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:9:"top_level";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:77:"Whether this is running at the top level, prior to having sub-objects called.";s:11:"phpdoc_name";s:9:"top_level";}i:1;a:7:{s:4:"name";s:4:"type";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:80:"The screen type to consider for metadata purposes (null: read from environment).";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:9:"run_start";a:6:{s:8:"filename";s:38:"adminzone/pages/modules/admin_chat.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:28:"The type of module execution";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:9:"run_start";s:11:"description";s:31:"Standard crud_module run_start.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:21:"The output of the run";}}s:6:"browse";a:6:{s:8:"filename";s:38:"adminzone/pages/modules/admin_chat.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"browse";s:11:"description";s:50:"The do-next manager for before content management.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:15:"get_form_fields";a:6:{s:8:"filename";s:38:"adminzone/pages/modules/admin_chat.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_form_fields";s:11:"description";s:39:"Get Tempcode for a adding/editing form.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:39:"A pair: The input fields, Hidden fields";}}s:29:"create_selection_list_entries";a:6:{s:8:"filename";s:38:"adminzone/pages/modules/admin_chat.php";s:10:"parameters";a:0:{}s:4:"name";s:29:"create_selection_list_entries";s:11:"description";s:35:"Standard crud_module list function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:18:"The selection list";}}s:17:"fill_in_edit_form";a:6:{s:8:"filename";s:38:"adminzone/pages/modules/admin_chat.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:17:"fill_in_edit_form";s:11:"description";s:38:"Standard crud_module edit form filler.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:39:"A pair: The input fields, Hidden fields";}}s:17:"add_actualisation";a:6:{s:8:"filename";s:38:"adminzone/pages/modules/admin_chat.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"add_actualisation";s:11:"description";s:36:"Standard crud_module add actualiser.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The entry added";}}s:18:"edit_actualisation";a:5:{s:8:"filename";s:38:"adminzone/pages/modules/admin_chat.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:18:"edit_actualisation";s:11:"description";s:37:"Standard crud_module edit actualiser.";s:5:"flags";a:0:{}}s:20:"delete_actualisation";a:5:{s:8:"filename";s:38:"adminzone/pages/modules/admin_chat.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"The entry being deleted";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:20:"delete_actualisation";s:11:"description";s:39:"Standard crud_module delete actualiser.";s:5:"flags";a:0:{}}s:10:"delete_all";a:6:{s:8:"filename";s:38:"adminzone/pages/modules/admin_chat.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"delete_all";s:11:"description";s:31:"The UI to delete all chatrooms.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:11:"_delete_all";a:6:{s:8:"filename";s:38:"adminzone/pages/modules/admin_chat.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"_delete_all";s:11:"description";s:39:"The actualiser to delete all chatrooms.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:17:"Module_admin_chat";s:7:"comment";b:1;}s:20:"Module_admin_cleanup";a:3:{s:9:"functions";a:6:{s:4:"info";a:6:{s:8:"filename";s:41:"adminzone/pages/modules/admin_cleanup.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:16:"get_entry_points";a:6:{s:8:"filename";s:41:"adminzone/pages/modules/admin_cleanup.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:41:"adminzone/pages/modules/admin_cleanup.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:41:"adminzone/pages/modules/admin_cleanup.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:17:"choose_cache_type";a:6:{s:8:"filename";s:41:"adminzone/pages/modules/admin_cleanup.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"choose_cache_type";s:11:"description";s:36:"The UI for choosing caches to empty.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:10:"do_rebuild";a:6:{s:8:"filename";s:41:"adminzone/pages/modules/admin_cleanup.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"do_rebuild";s:11:"description";s:35:"The actualiser for emptying caches.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:20:"Module_admin_cleanup";s:7:"comment";b:1;}s:36:"Module_admin_cns_customprofilefields";a:3:{s:9:"functions";a:14:{s:16:"get_entry_points";a:6:{s:8:"filename";s:57:"adminzone/pages/modules/admin_cns_customprofilefields.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:57:"adminzone/pages/modules/admin_cns_customprofilefields.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:9:"top_level";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:77:"Whether this is running at the top level, prior to having sub-objects called.";s:11:"phpdoc_name";s:9:"top_level";}i:1;a:7:{s:4:"name";s:4:"type";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:80:"The screen type to consider for metadata purposes (null: read from environment).";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:9:"run_start";a:6:{s:8:"filename";s:57:"adminzone/pages/modules/admin_cns_customprofilefields.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:28:"The type of module execution";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:9:"run_start";s:11:"description";s:31:"Standard crud_module run_start.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:21:"The output of the run";}}s:6:"browse";a:6:{s:8:"filename";s:57:"adminzone/pages/modules/admin_cns_customprofilefields.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"browse";s:11:"description";s:50:"The do-next manager for before content management.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:15:"get_form_fields";a:6:{s:8:"filename";s:57:"adminzone/pages/modules/admin_cns_customprofilefields.php";s:10:"parameters";a:16:{i:0;a:7:{s:4:"name";s:4:"name";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:36:"The name of the custom profile field";s:11:"phpdoc_name";s:4:"name";}i:1;a:7:{s:4:"name";s:11:"description";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:28:"The description of the field";s:11:"phpdoc_name";s:11:"description";}i:2;a:7:{s:4:"name";s:7:"default";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:30:"The default value of the field";s:11:"phpdoc_name";s:7:"default";}i:3;a:7:{s:4:"name";s:11:"public_view";s:7:"default";i:1;s:11:"default_raw";s:1:"1";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:38:"Whether the field is publicly viewable";s:11:"phpdoc_name";s:11:"public_view";}i:4;a:7:{s:4:"name";s:10:"owner_view";s:7:"default";i:1;s:11:"default_raw";s:1:"1";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:44:"Whether the field may be viewed by the owner";s:11:"phpdoc_name";s:10:"owner_view";}i:5;a:7:{s:4:"name";s:9:"owner_set";s:7:"default";i:1;s:11:"default_raw";s:1:"1";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:48:"Whether the owner may set the value of the field";s:11:"phpdoc_name";s:9:"owner_set";}i:6;a:7:{s:4:"name";s:9:"encrypted";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:30:"Whether the field is encrypted";s:11:"phpdoc_name";s:9:"encrypted";}i:7;a:8:{s:4:"name";s:4:"type";s:7:"default";s:9:"long_text";s:11:"default_raw";s:11:"'long_text'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:21:"The type of the field";s:11:"phpdoc_name";s:4:"type";s:3:"set";s:80:"short_text long_text short_trans long_trans integer upload picture url list tick";}i:8;a:7:{s:4:"name";s:8:"required";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:45:"Whether the field is required to be filled in";s:11:"phpdoc_name";s:8:"required";}i:9;a:7:{s:4:"name";s:17:"show_on_join_form";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:49:"Whether the field is to be shown on the join form";s:11:"phpdoc_name";s:17:"show_on_join_form";}i:10;a:7:{s:4:"name";s:13:"show_in_posts";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:35:"Whether the field is shown in posts";s:11:"phpdoc_name";s:13:"show_in_posts";}i:11;a:7:{s:4:"name";s:21:"show_in_post_previews";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:43:"Whether the field is shown in post previews";s:11:"phpdoc_name";s:21:"show_in_post_previews";}i:12;a:7:{s:4:"name";s:5:"order";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:98:"The order the field is given relative to the order of the other custom profile fields (null: last)";s:11:"phpdoc_name";s:5:"order";}i:13;a:7:{s:4:"name";s:10:"only_group";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:69:"The usergroups that this field is confined to (comma-separated list).";s:11:"phpdoc_name";s:10:"only_group";}i:14;a:7:{s:4:"name";s:6:"locked";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:27:"Whether the field is locked";s:11:"phpdoc_name";s:6:"locked";}i:15;a:7:{s:4:"name";s:7:"options";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:13:"Field options";s:11:"phpdoc_name";s:7:"options";}}s:4:"name";s:15:"get_form_fields";s:11:"description";s:37:"Get Tempcode for adding/editing form.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: the Tempcode for the visible fields, and the Tempcode for the hidden fields";}}s:34:"create_selection_list_choose_table";a:6:{s:8:"filename";s:57:"adminzone/pages/modules/admin_cns_customprofilefields.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"url_map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:55:"Details to go to build_url for link to the next screen.";s:11:"phpdoc_name";s:7:"url_map";}}s:4:"name";s:34:"create_selection_list_choose_table";s:11:"description";s:36:"Standard crud_module table function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:76:"A pair: The choose table, Whether re-ordering is supported from this screen.";}}s:12:"change_order";a:5:{s:8:"filename";s:57:"adminzone/pages/modules/admin_cns_customprofilefields.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:7:"The ID.";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:9:"old_order";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:10:"Old order.";s:11:"phpdoc_name";s:9:"old_order";}i:2;a:5:{s:4:"name";s:9:"new_order";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:10:"New order.";s:11:"phpdoc_name";s:9:"new_order";}}s:4:"name";s:12:"change_order";s:11:"description";s:43:"Change the order of a Custom Profile Field.";s:5:"flags";a:0:{}}s:15:"may_delete_this";a:6:{s:8:"filename";s:57:"adminzone/pages/modules/admin_cns_customprofilefields.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:35:"The entry being potentially deleted";s:11:"phpdoc_name";s:3:"_id";}}s:4:"name";s:15:"may_delete_this";s:11:"description";s:48:"Standard crud_module delete possibility checker.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:25:"Whether it may be deleted";}}s:17:"fill_in_edit_form";a:6:{s:8:"filename";s:57:"adminzone/pages/modules/admin_cns_customprofilefields.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:17:"fill_in_edit_form";s:11:"description";s:38:"Standard crud_module edit form filler.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: the Tempcode for the visible fields, and the Tempcode for the hidden fields";}}s:17:"add_actualisation";a:6:{s:8:"filename";s:57:"adminzone/pages/modules/admin_cns_customprofilefields.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"add_actualisation";s:11:"description";s:36:"Standard crud_module add actualiser.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The entry added";}}s:18:"edit_actualisation";a:5:{s:8:"filename";s:57:"adminzone/pages/modules/admin_cns_customprofilefields.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:18:"edit_actualisation";s:11:"description";s:37:"Standard crud_module edit actualiser.";s:5:"flags";a:0:{}}s:20:"delete_actualisation";a:5:{s:8:"filename";s:57:"adminzone/pages/modules/admin_cns_customprofilefields.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"The entry being deleted";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:20:"delete_actualisation";s:11:"description";s:39:"Standard crud_module delete actualiser.";s:5:"flags";a:0:{}}s:5:"stats";a:6:{s:8:"filename";s:57:"adminzone/pages/modules/admin_cns_customprofilefields.php";s:10:"parameters";a:0:{}s:4:"name";s:5:"stats";s:11:"description";s:58:"Show value statistics for a custom profile field (choose).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:6:"_stats";a:6:{s:8:"filename";s:57:"adminzone/pages/modules/admin_cns_customprofilefields.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"_stats";s:11:"description";s:56:"Show value statistics for a custom profile field (show).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:14:"The statistics";}}}s:4:"name";s:36:"Module_admin_cns_customprofilefields";s:7:"comment";b:1;}s:26:"Module_admin_cns_emoticons";a:3:{s:9:"functions";a:13:{s:16:"get_entry_points";a:6:{s:8:"filename";s:47:"adminzone/pages/modules/admin_cns_emoticons.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:47:"adminzone/pages/modules/admin_cns_emoticons.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:9:"top_level";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:77:"Whether this is running at the top level, prior to having sub-objects called.";s:11:"phpdoc_name";s:9:"top_level";}i:1;a:7:{s:4:"name";s:4:"type";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:80:"The screen type to consider for metadata purposes (null: read from environment).";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:9:"run_start";a:6:{s:8:"filename";s:47:"adminzone/pages/modules/admin_cns_emoticons.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:28:"The type of module execution";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:9:"run_start";s:11:"description";s:31:"Standard crud_module run_start.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:21:"The output of the run";}}s:6:"browse";a:6:{s:8:"filename";s:47:"adminzone/pages/modules/admin_cns_emoticons.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"browse";s:11:"description";s:50:"The do-next manager for before content management.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:6:"import";a:6:{s:8:"filename";s:47:"adminzone/pages/modules/admin_cns_emoticons.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"import";s:11:"description";s:46:"The UI to import in bulk from an archive file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:7:"_import";a:6:{s:8:"filename";s:47:"adminzone/pages/modules/admin_cns_emoticons.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"_import";s:11:"description";s:54:"The actualiser to import in bulk from an archive file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:16:"_import_emoticon";a:5:{s:8:"filename";s:47:"adminzone/pages/modules/admin_cns_emoticons.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:68:"Path to the emoticon file, on disk (must be in theme images folder).";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:16:"_import_emoticon";s:11:"description";s:19:"Import an emoticon.";s:5:"flags";a:0:{}}s:15:"get_form_fields";a:6:{s:8:"filename";s:47:"adminzone/pages/modules/admin_cns_emoticons.php";s:10:"parameters";a:5:{i:0;a:7:{s:4:"name";s:4:"code";s:7:"default";s:3:":-]";s:11:"default_raw";s:5:"':-]'";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:17:"The emoticon code";s:11:"phpdoc_name";s:4:"code";}i:1;a:7:{s:4:"name";s:14:"theme_img_code";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:20:"The theme image code";s:11:"phpdoc_name";s:14:"theme_img_code";}i:2;a:8:{s:4:"name";s:15:"relevance_level";s:7:"default";i:1;s:11:"default_raw";s:1:"1";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:35:"The relevance level of the emoticon";s:11:"phpdoc_name";s:15:"relevance_level";s:5:"range";s:3:"0 4";}i:3;a:7:{s:4:"name";s:10:"use_topics";s:7:"default";i:1;s:11:"default_raw";s:1:"1";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:50:"Whether the emoticon is usable as a topic emoticon";s:11:"phpdoc_name";s:10:"use_topics";}i:4;a:7:{s:4:"name";s:10:"is_special";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:51:"Whether this may only be used by privileged members";s:11:"phpdoc_name";s:10:"is_special";}}s:4:"name";s:15:"get_form_fields";s:11:"description";s:53:"Get Tempcode for a post template adding/editing form.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:39:"A pair: The input fields, Hidden fields";}}s:35:"create_selection_list_radio_entries";a:6:{s:8:"filename";s:47:"adminzone/pages/modules/admin_cns_emoticons.php";s:10:"parameters";a:0:{}s:4:"name";s:35:"create_selection_list_radio_entries";s:11:"description";s:35:"Standard crud_module list function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:18:"The selection list";}}s:17:"fill_in_edit_form";a:6:{s:8:"filename";s:47:"adminzone/pages/modules/admin_cns_emoticons.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:17:"fill_in_edit_form";s:11:"description";s:38:"Standard crud_module edit form filler.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:39:"A pair: The input fields, Hidden fields";}}s:17:"add_actualisation";a:6:{s:8:"filename";s:47:"adminzone/pages/modules/admin_cns_emoticons.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"add_actualisation";s:11:"description";s:36:"Standard crud_module add actualiser.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The entry added";}}s:18:"edit_actualisation";a:5:{s:8:"filename";s:47:"adminzone/pages/modules/admin_cns_emoticons.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:18:"edit_actualisation";s:11:"description";s:37:"Standard crud_module edit actualiser.";s:5:"flags";a:0:{}}s:20:"delete_actualisation";a:5:{s:8:"filename";s:47:"adminzone/pages/modules/admin_cns_emoticons.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"The entry being deleted";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:20:"delete_actualisation";s:11:"description";s:39:"Standard crud_module delete actualiser.";s:5:"flags";a:0:{}}}s:4:"name";s:26:"Module_admin_cns_emoticons";s:7:"comment";b:1;}s:32:"Module_admin_cns_forum_groupings";a:3:{s:9:"functions";a:11:{s:16:"get_entry_points";a:6:{s:8:"filename";s:53:"adminzone/pages/modules/admin_cns_forum_groupings.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:53:"adminzone/pages/modules/admin_cns_forum_groupings.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:9:"top_level";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:77:"Whether this is running at the top level, prior to having sub-objects called.";s:11:"phpdoc_name";s:9:"top_level";}i:1;a:7:{s:4:"name";s:4:"type";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:80:"The screen type to consider for metadata purposes (null: read from environment).";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:9:"run_start";a:6:{s:8:"filename";s:53:"adminzone/pages/modules/admin_cns_forum_groupings.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"run_start";s:11:"description";s:31:"Standard crud_module run_start.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:21:"The output of the run";}}s:15:"get_form_fields";a:6:{s:8:"filename";s:53:"adminzone/pages/modules/admin_cns_forum_groupings.php";s:10:"parameters";a:3:{i:0;a:7:{s:4:"name";s:5:"title";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:38:"The title (name) of the forum grouping";s:11:"phpdoc_name";s:5:"title";}i:1;a:7:{s:4:"name";s:11:"description";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:38:"The description for the forum grouping";s:11:"phpdoc_name";s:11:"description";}i:2;a:7:{s:4:"name";s:19:"expanded_by_default";s:7:"default";i:1;s:11:"default_raw";s:1:"1";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:78:"Whether the forum grouping is expanded by default when shown in the forum view";s:11:"phpdoc_name";s:19:"expanded_by_default";}}s:4:"name";s:15:"get_form_fields";s:11:"description";s:63:"Get Tempcode for a forum grouping template adding/editing form.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:39:"A pair: The input fields, Hidden fields";}}s:34:"create_selection_list_choose_table";a:6:{s:8:"filename";s:53:"adminzone/pages/modules/admin_cns_forum_groupings.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"url_map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:55:"Details to go to build_url for link to the next screen.";s:11:"phpdoc_name";s:7:"url_map";}}s:4:"name";s:34:"create_selection_list_choose_table";s:11:"description";s:36:"Standard crud_module table function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:104:"A quartet: The choose table, Whether re-ordering is supported from this screen, Search URL, Archive URL.";}}s:29:"create_selection_list_entries";a:6:{s:8:"filename";s:53:"adminzone/pages/modules/admin_cns_forum_groupings.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:5:"avoid";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:46:"The entry to not show (null: none to not show)";s:11:"phpdoc_name";s:5:"avoid";}}s:4:"name";s:29:"create_selection_list_entries";s:11:"description";s:35:"Standard crud_module list function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:18:"The selection list";}}s:17:"fill_in_edit_form";a:6:{s:8:"filename";s:53:"adminzone/pages/modules/admin_cns_forum_groupings.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:3:"_id";}}s:4:"name";s:17:"fill_in_edit_form";s:11:"description";s:38:"Standard crud_module edit form filler.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:46:"A triple: fields, hidden-fields, delete-fields";}}s:15:"may_delete_this";a:6:{s:8:"filename";s:53:"adminzone/pages/modules/admin_cns_forum_groupings.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:35:"The entry being potentially deleted";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:15:"may_delete_this";s:11:"description";s:48:"Standard crud_module delete possibility checker.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:25:"Whether it may be deleted";}}s:17:"add_actualisation";a:6:{s:8:"filename";s:53:"adminzone/pages/modules/admin_cns_forum_groupings.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"add_actualisation";s:11:"description";s:36:"Standard crud_module add actualiser.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The entry added";}}s:18:"edit_actualisation";a:5:{s:8:"filename";s:53:"adminzone/pages/modules/admin_cns_forum_groupings.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:18:"edit_actualisation";s:11:"description";s:37:"Standard crud_module edit actualiser.";s:5:"flags";a:0:{}}s:20:"delete_actualisation";a:5:{s:8:"filename";s:53:"adminzone/pages/modules/admin_cns_forum_groupings.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"The entry being deleted";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:20:"delete_actualisation";s:11:"description";s:39:"Standard crud_module delete actualiser.";s:5:"flags";a:0:{}}}s:4:"name";s:32:"Module_admin_cns_forum_groupings";s:7:"comment";b:1;}s:23:"Module_admin_cns_forums";a:3:{s:9:"functions";a:13:{s:16:"get_entry_points";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_cns_forums.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_cns_forums.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:9:"top_level";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:77:"Whether this is running at the top level, prior to having sub-objects called.";s:11:"phpdoc_name";s:9:"top_level";}i:1;a:7:{s:4:"name";s:4:"type";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:80:"The screen type to consider for metadata purposes (null: read from environment).";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:9:"run_start";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_cns_forums.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:28:"The type of module execution";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:9:"run_start";s:11:"description";s:31:"Standard crud_module run_start.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:21:"The output of the run";}}s:6:"browse";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_cns_forums.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"browse";s:11:"description";s:50:"The do-next manager for before content management.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:15:"get_form_fields";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_cns_forums.php";s:10:"parameters";a:14:{i:0;a:7:{s:4:"name";s:2:"id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:60:"The ID of the forum being edited (null: adding, not editing)";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:4:"name";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:21:"The name of the forum";s:11:"phpdoc_name";s:4:"name";}i:2;a:7:{s:4:"name";s:11:"description";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:28:"The description of the forum";s:11:"phpdoc_name";s:11:"description";}i:3;a:7:{s:4:"name";s:17:"forum_grouping_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:56:"The ID of the forum grouping for the forum (null: first)";s:11:"phpdoc_name";s:17:"forum_grouping_id";}i:4;a:7:{s:4:"name";s:12:"parent_forum";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:29:"The parent forum (null: root)";s:11:"phpdoc_name";s:12:"parent_forum";}i:5;a:7:{s:4:"name";s:8:"position";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:25:"The position (null: next)";s:11:"phpdoc_name";s:8:"position";}i:6;a:7:{s:4:"name";s:20:"post_count_increment";s:7:"default";i:1;s:11:"default_raw";s:1:"1";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:49:"Whether post counts are incremented in this forum";s:11:"phpdoc_name";s:20:"post_count_increment";}i:7;a:7:{s:4:"name";s:15:"order_sub_alpha";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:66:"Whether subforums are ordered alphabetically (instead of manually)";s:11:"phpdoc_name";s:15:"order_sub_alpha";}i:8;a:7:{s:4:"name";s:14:"intro_question";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:57:"Introductory question posed to all newcomers to the forum";s:11:"phpdoc_name";s:14:"intro_question";}i:9;a:7:{s:4:"name";s:12:"intro_answer";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:69:"Answer to the introductory question (or blank if it was just an 'ok')";s:11:"phpdoc_name";s:12:"intro_answer";}i:10;a:7:{s:4:"name";s:11:"redirection";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:65:"Redirection code (blank implies a normal forum, not a redirector)";s:11:"phpdoc_name";s:11:"redirection";}i:11;a:7:{s:4:"name";s:5:"order";s:7:"default";s:9:"last_post";s:11:"default_raw";s:11:"'last_post'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:46:"The order the topics are shown in, by default.";s:11:"phpdoc_name";s:5:"order";}i:12;a:7:{s:4:"name";s:11:"is_threaded";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:30:"Whether the forum is threaded.";s:11:"phpdoc_name";s:11:"is_threaded";}i:13;a:7:{s:4:"name";s:22:"allows_anonymous_posts";s:7:"default";i:1;s:11:"default_raw";s:1:"1";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:35:"Whether anonymous posts are allowed";s:11:"phpdoc_name";s:22:"allows_anonymous_posts";}}s:4:"name";s:15:"get_form_fields";s:11:"description";s:45:"Get Tempcode for a forum adding/editing form.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:39:"A pair: The input fields, Hidden fields";}}s:14:"get_forum_tree";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_cns_forums.php";s:10:"parameters";a:8:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:93:"The ID of the forum we are generating the tree below (start recursion with db_get_first_id())";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:5:"forum";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:25:"The name of the forum $id";s:11:"phpdoc_name";s:5:"forum";}i:2;a:5:{s:4:"name";s:10:"all_forums";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:82:"A list of rows of all forums, or array() if the function is to get the list itself";s:11:"phpdoc_name";s:10:"all_forums";}i:3;a:7:{s:4:"name";s:8:"position";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:85:"The relative position of this forum wrt the others on the same level/branch in the UI";s:11:"phpdoc_name";s:8:"position";}i:4;a:7:{s:4:"name";s:32:"sub_num_in_parent_forum_grouping";s:7:"default";i:1;s:11:"default_raw";s:1:"1";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:49:"The number of forums in the parent forum grouping";s:11:"phpdoc_name";s:32:"sub_num_in_parent_forum_grouping";}i:5;a:7:{s:4:"name";s:15:"order_sub_alpha";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:68:"Whether to order own subcategories alphabetically (null: ask the DB)";s:11:"phpdoc_name";s:15:"order_sub_alpha";}i:6;a:7:{s:4:"name";s:22:"parent_order_sub_alpha";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:64:"Whether to order subcategories alphabetically (null: ask the DB)";s:11:"phpdoc_name";s:22:"parent_order_sub_alpha";}i:7;a:7:{s:4:"name";s:4:"huge";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:50:"Whether we are dealing with a huge forum structure";s:11:"phpdoc_name";s:4:"huge";}}s:4:"name";s:14:"get_forum_tree";s:11:"description";s:35:"Get a UI to choose a forum to edit.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:4:"edit";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_cns_forums.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"edit";s:11:"description";s:86:"The UI to choose a forum to edit (relies on get_forum_tree to do almost all the work).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:7:"reorder";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_cns_forums.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"reorder";s:11:"description";s:33:"The actualiser to reorder forums.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:15:"may_delete_this";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_cns_forums.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:35:"The entry being potentially deleted";s:11:"phpdoc_name";s:3:"_id";}}s:4:"name";s:15:"may_delete_this";s:11:"description";s:48:"Standard crud_module delete possibility checker.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:25:"Whether it may be deleted";}}s:17:"fill_in_edit_form";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_cns_forums.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:17:"fill_in_edit_form";s:11:"description";s:38:"Standard crud_module edit form filler.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:75:"A tuple: fields, hidden-fields, delete-fields, N/A, N/A, N/A, action fields";}}s:17:"add_actualisation";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_cns_forums.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"add_actualisation";s:11:"description";s:36:"Standard crud_module add actualiser.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The entry added";}}s:18:"edit_actualisation";a:5:{s:8:"filename";s:44:"adminzone/pages/modules/admin_cns_forums.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:18:"edit_actualisation";s:11:"description";s:37:"Standard crud_module edit actualiser.";s:5:"flags";a:0:{}}s:20:"delete_actualisation";a:5:{s:8:"filename";s:44:"adminzone/pages/modules/admin_cns_forums.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"The entry being deleted";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:20:"delete_actualisation";s:11:"description";s:39:"Standard crud_module delete actualiser.";s:5:"flags";a:0:{}}}s:4:"name";s:23:"Module_admin_cns_forums";s:7:"comment";b:1;}s:23:"Module_admin_cns_groups";a:3:{s:9:"functions";a:14:{s:16:"get_entry_points";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_cns_groups.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_cns_groups.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:9:"top_level";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:77:"Whether this is running at the top level, prior to having sub-objects called.";s:11:"phpdoc_name";s:9:"top_level";}i:1;a:7:{s:4:"name";s:4:"type";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:80:"The screen type to consider for metadata purposes (null: read from environment).";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:9:"run_start";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_cns_groups.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:28:"The type of module execution";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:9:"run_start";s:11:"description";s:31:"Standard crud_module run_start.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:21:"The output of the run";}}s:6:"browse";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_cns_groups.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"browse";s:11:"description";s:50:"The do-next manager for before content management.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:15:"get_form_fields";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_cns_groups.php";s:10:"parameters";a:27:{i:0;a:7:{s:4:"name";s:2:"id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:6:"?GROUP";s:11:"description";s:54:"The usergroup being edited (null: adding, not editing)";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:4:"name";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:18:"The usergroup name";s:11:"phpdoc_name";s:4:"name";}i:2;a:7:{s:4:"name";s:10:"is_default";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:35:"Whether this is a default usergroup";s:11:"phpdoc_name";s:10:"is_default";}i:3;a:7:{s:4:"name";s:14:"is_super_admin";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:57:"Whether members of the usergroup are super-administrators";s:11:"phpdoc_name";s:14:"is_super_admin";}i:4;a:7:{s:4:"name";s:18:"is_super_moderator";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:53:"Whether members of the usergroup are super-moderators";s:11:"phpdoc_name";s:18:"is_super_moderator";}i:5;a:7:{s:4:"name";s:12:"group_leader";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:36:"The username of the usergroup leader";s:11:"phpdoc_name";s:12:"group_leader";}i:6;a:7:{s:4:"name";s:5:"title";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:66:"The default title for members with this as their primary usergroup";s:11:"phpdoc_name";s:5:"title";}i:7;a:7:{s:4:"name";s:10:"rank_image";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:24:"The usergroup rank image";s:11:"phpdoc_name";s:10:"rank_image";}i:8;a:7:{s:4:"name";s:16:"promotion_target";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:6:"?GROUP";s:11:"description";s:75:"The target for promotion from this usergroup (null: no promotion prospects)";s:11:"phpdoc_name";s:16:"promotion_target";}i:9;a:7:{s:4:"name";s:19:"promotion_threshold";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:78:"The point threshold upon which promotion occurs (null: no promotion prospects)";s:11:"phpdoc_name";s:19:"promotion_threshold";}i:10;a:7:{s:4:"name";s:25:"flood_control_submit_secs";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:95:"The number of seconds between submission flood controls (null: average for existing usergroups)";s:11:"phpdoc_name";s:25:"flood_control_submit_secs";}i:11;a:7:{s:4:"name";s:25:"flood_control_access_secs";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:91:"The number of seconds between access flood controls (null: average for existing usergroups)";s:11:"phpdoc_name";s:25:"flood_control_access_secs";}i:12;a:7:{s:4:"name";s:16:"gift_points_base";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:111:"The number of gift points members of this usergroup get when they start (null: average for existing usergroups)";s:11:"phpdoc_name";s:16:"gift_points_base";}i:13;a:7:{s:4:"name";s:19:"gift_points_per_day";s:7:"default";i:1;s:11:"default_raw";s:1:"1";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:103:"The number of gift points members of this usergroup get per-day (null: average for existing usergroups)";s:11:"phpdoc_name";s:19:"gift_points_per_day";}i:14;a:7:{s:4:"name";s:19:"max_daily_upload_mb";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:90:"The number of megabytes members can upload per day (null: average for existing usergroups)";s:11:"phpdoc_name";s:19:"max_daily_upload_mb";}i:15;a:7:{s:4:"name";s:24:"max_attachments_per_post";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:117:"The maximum number of attachments members of this usergroup may have per post (null: average for existing usergroups)";s:11:"phpdoc_name";s:24:"max_attachments_per_post";}i:16;a:7:{s:4:"name";s:16:"max_avatar_width";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:99:"The maximum avatar width members of this usergroup may have (null: average for existing usergroups)";s:11:"phpdoc_name";s:16:"max_avatar_width";}i:17;a:7:{s:4:"name";s:17:"max_avatar_height";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:100:"The maximum avatar height members of this usergroup may have (null: average for existing usergroups)";s:11:"phpdoc_name";s:17:"max_avatar_height";}i:18;a:7:{s:4:"name";s:23:"max_post_length_comcode";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:98:"The maximum post length members of this usergroup may have (null: average for existing usergroups)";s:11:"phpdoc_name";s:23:"max_post_length_comcode";}i:19;a:7:{s:4:"name";s:22:"max_sig_length_comcode";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:103:"The maximum signature length members of this usergroup may have (null: average for existing usergroups)";s:11:"phpdoc_name";s:22:"max_sig_length_comcode";}i:20;a:7:{s:4:"name";s:18:"enquire_on_new_ips";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:69:"Whether to lock out unverified IP addresses until e-mail confirmation";s:11:"phpdoc_name";s:18:"enquire_on_new_ips";}i:21;a:7:{s:4:"name";s:23:"is_presented_at_install";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:129:"Whether the usergroup is presented for joining at joining (implies anyone may be in the usergroup, but only choosable at joining)";s:11:"phpdoc_name";s:23:"is_presented_at_install";}i:22;a:7:{s:4:"name";s:15:"group_is_hidden";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:58:"Whether the name and membership of the usergroup is hidden";s:11:"phpdoc_name";s:15:"group_is_hidden";}i:23;a:7:{s:4:"name";s:5:"order";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:159:"The display order this usergroup will be given, relative to other usergroups. Lower numbered usergroups display before higher numbered usergroups (null: last).";s:11:"phpdoc_name";s:5:"order";}i:24;a:7:{s:4:"name";s:19:"rank_image_pri_only";s:7:"default";i:1;s:11:"default_raw";s:1:"1";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:65:"Whether the rank image will not be shown for secondary membership";s:11:"phpdoc_name";s:19:"rank_image_pri_only";}i:25;a:7:{s:4:"name";s:15:"open_membership";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:80:"Whether members may join this usergroup without requiring any special permission";s:11:"phpdoc_name";s:15:"open_membership";}i:26;a:7:{s:4:"name";s:15:"is_private_club";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:169:"Whether this usergroup is a private club. Private clubs may be managed in the CMS zone, and do not have any special permissions - except over their own associated forum.";s:11:"phpdoc_name";s:15:"is_private_club";}}s:4:"name";s:15:"get_form_fields";s:11:"description";s:39:"Get Tempcode for a adding/editing form.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:39:"A pair: The input fields, Hidden fields";}}s:34:"create_selection_list_choose_table";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_cns_groups.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"url_map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:55:"Details to go to build_url for link to the next screen.";s:11:"phpdoc_name";s:7:"url_map";}}s:4:"name";s:34:"create_selection_list_choose_table";s:11:"description";s:36:"Standard crud_module table function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:104:"A quartet: The choose table, Whether re-ordering is supported from this screen, Search URL, Archive URL.";}}s:29:"create_selection_list_entries";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_cns_groups.php";s:10:"parameters";a:0:{}s:4:"name";s:29:"create_selection_list_entries";s:11:"description";s:35:"Standard crud_module list function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:18:"The selection list";}}s:15:"may_delete_this";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_cns_groups.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:35:"The entry being potentially deleted";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:15:"may_delete_this";s:11:"description";s:48:"Standard crud_module delete possibility checker.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:25:"Whether it may be deleted";}}s:17:"fill_in_edit_form";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_cns_groups.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:17:"fill_in_edit_form";s:11:"description";s:38:"Standard crud_module edit form filler.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:46:"A triple: fields, hidden-fields, delete-fields";}}s:17:"copy_members_into";a:5:{s:8:"filename";s:44:"adminzone/pages/modules/admin_cns_groups.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"g";s:3:"ref";b:0;s:4:"type";s:5:"GROUP";s:11:"description";s:34:"The usergroup to copy members from";s:11:"phpdoc_name";s:1:"g";}}s:4:"name";s:17:"copy_members_into";s:11:"description";s:39:"Handle the "copy members from" feature.";s:5:"flags";a:0:{}}s:12:"read_in_data";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_cns_groups.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"read_in_data";s:11:"description";s:39:"Read in data posted by an add/edit form";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:76:"A triplet of integers: (group leader, promotion target, promotion threshold)";}}s:17:"add_actualisation";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_cns_groups.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"add_actualisation";s:11:"description";s:36:"Standard crud_module add actualiser.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The entry added";}}s:18:"edit_actualisation";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_cns_groups.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:18:"edit_actualisation";s:11:"description";s:37:"Standard crud_module edit actualiser.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:32:"Confirm message (null: continue)";}}s:20:"delete_actualisation";a:5:{s:8:"filename";s:44:"adminzone/pages/modules/admin_cns_groups.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"The entry being deleted";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:20:"delete_actualisation";s:11:"description";s:39:"Standard crud_module delete actualiser.";s:5:"flags";a:0:{}}}s:4:"name";s:23:"Module_admin_cns_groups";s:7:"comment";b:1;}s:21:"Module_admin_cns_ldap";a:3:{s:9:"functions";a:6:{s:4:"info";a:6:{s:8:"filename";s:42:"adminzone/pages/modules/admin_cns_ldap.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:16:"get_entry_points";a:6:{s:8:"filename";s:42:"adminzone/pages/modules/admin_cns_ldap.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:42:"adminzone/pages/modules/admin_cns_ldap.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:42:"adminzone/pages/modules/admin_cns_ldap.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:3:"gui";a:6:{s:8:"filename";s:42:"adminzone/pages/modules/admin_cns_ldap.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"gui";s:11:"description";s:32:"The UI for LDAP synchronisation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:6:"actual";a:6:{s:8:"filename";s:42:"adminzone/pages/modules/admin_cns_ldap.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"actual";s:11:"description";s:40:"The actualiser for LDAP synchronisation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:21:"Module_admin_cns_ldap";s:7:"comment";b:1;}s:24:"Module_admin_cns_members";a:3:{s:9:"functions";a:15:{s:4:"info";a:6:{s:8:"filename";s:45:"adminzone/pages/modules/admin_cns_members.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:16:"get_entry_points";a:6:{s:8:"filename";s:45:"adminzone/pages/modules/admin_cns_members.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:45:"adminzone/pages/modules/admin_cns_members.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:45:"adminzone/pages/modules/admin_cns_members.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:6:"browse";a:6:{s:8:"filename";s:45:"adminzone/pages/modules/admin_cns_members.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"browse";s:11:"description";s:43:"The do-next manager for choosing what to do";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:5:"step1";a:6:{s:8:"filename";s:45:"adminzone/pages/modules/admin_cns_members.php";s:10:"parameters";a:0:{}s:4:"name";s:5:"step1";s:11:"description";s:27:"The UI for adding a member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:5:"step2";a:6:{s:8:"filename";s:45:"adminzone/pages/modules/admin_cns_members.php";s:10:"parameters";a:0:{}s:4:"name";s:5:"step2";s:11:"description";s:35:"The actualiser for adding a member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:6:"delurk";a:6:{s:8:"filename";s:45:"adminzone/pages/modules/admin_cns_members.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"delurk";s:11:"description";s:36:"The UI for choosing delurk criteria.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:12:"find_lurkers";a:6:{s:8:"filename";s:45:"adminzone/pages/modules/admin_cns_members.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:9:"max_posts";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:19:"Maximum forum posts";s:11:"phpdoc_name";s:9:"max_posts";}i:1;a:5:{s:4:"name";s:10:"max_points";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:14:"Maximum points";s:11:"phpdoc_name";s:10:"max_points";}i:2;a:5:{s:4:"name";s:18:"max_logged_actions";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:22:"Maximum logged actions";s:11:"phpdoc_name";s:18:"max_logged_actions";}i:3;a:5:{s:4:"name";s:20:"min_days_since_login";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:29:"Minimum days since last login";s:11:"phpdoc_name";s:20:"min_days_since_login";}i:4;a:5:{s:4:"name";s:19:"min_days_since_join";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:26:"Minimum days since joining";s:11:"phpdoc_name";s:19:"min_days_since_join";}i:5;a:5:{s:4:"name";s:10:"usergroups";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:18:"List of usergroups";s:11:"phpdoc_name";s:10:"usergroups";}}s:4:"name";s:12:"find_lurkers";s:11:"description";s:72:"Find a mapping of member IDs to usernames, of those who'll get delurked.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:18:"Mapping of lurkers";}}s:7:"_delurk";a:6:{s:8:"filename";s:45:"adminzone/pages/modules/admin_cns_members.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"_delurk";s:11:"description";s:62:"The UI for confirming the deletion results of delurk criteria.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:8:"__delurk";a:6:{s:8:"filename";s:45:"adminzone/pages/modules/admin_cns_members.php";s:10:"parameters";a:0:{}s:4:"name";s:8:"__delurk";s:11:"description";s:65:"The actualiser for deletion members according to delurk criteria.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:12:"download_csv";a:6:{s:8:"filename";s:45:"adminzone/pages/modules/admin_cns_members.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"download_csv";s:11:"description";s:41:"The UI to download a CSV file of members.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:13:"_download_csv";a:6:{s:8:"filename";s:45:"adminzone/pages/modules/admin_cns_members.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"_download_csv";s:11:"description";s:44:"The actualiser to download a CSV of members.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:10:"import_csv";a:6:{s:8:"filename";s:45:"adminzone/pages/modules/admin_cns_members.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"import_csv";s:11:"description";s:32:"The UI for importing a CSV file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:11:"_import_csv";a:6:{s:8:"filename";s:45:"adminzone/pages/modules/admin_cns_members.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"_import_csv";s:11:"description";s:40:"The actualiser for importing a CSV file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:24:"Module_admin_cns_members";s:7:"comment";b:1;}s:30:"Module_admin_cns_merge_members";a:3:{s:9:"functions";a:6:{s:4:"info";a:6:{s:8:"filename";s:51:"adminzone/pages/modules/admin_cns_merge_members.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:16:"get_entry_points";a:6:{s:8:"filename";s:51:"adminzone/pages/modules/admin_cns_merge_members.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:51:"adminzone/pages/modules/admin_cns_merge_members.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:51:"adminzone/pages/modules/admin_cns_merge_members.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:3:"gui";a:6:{s:8:"filename";s:51:"adminzone/pages/modules/admin_cns_merge_members.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"gui";s:11:"description";s:37:"The UI for choosing members to merge.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:6:"actual";a:6:{s:8:"filename";s:51:"adminzone/pages/modules/admin_cns_merge_members.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"actual";s:11:"description";s:35:"The actualiser for merging members.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:30:"Module_admin_cns_merge_members";s:7:"comment";b:1;}s:34:"Module_admin_cns_multi_moderations";a:3:{s:9:"functions";a:14:{s:16:"get_entry_points";a:6:{s:8:"filename";s:55:"adminzone/pages/modules/admin_cns_multi_moderations.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:55:"adminzone/pages/modules/admin_cns_multi_moderations.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:9:"top_level";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:77:"Whether this is running at the top level, prior to having sub-objects called.";s:11:"phpdoc_name";s:9:"top_level";}i:1;a:7:{s:4:"name";s:4:"type";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:80:"The screen type to consider for metadata purposes (null: read from environment).";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:9:"run_start";a:6:{s:8:"filename";s:55:"adminzone/pages/modules/admin_cns_multi_moderations.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:28:"The type of module execution";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:9:"run_start";s:11:"description";s:31:"Standard crud_module run_start.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:21:"The output of the run";}}s:6:"browse";a:6:{s:8:"filename";s:55:"adminzone/pages/modules/admin_cns_multi_moderations.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"browse";s:11:"description";s:50:"The do-next manager for before content management.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:6:"import";a:6:{s:8:"filename";s:55:"adminzone/pages/modules/admin_cns_multi_moderations.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"import";s:11:"description";s:46:"The UI to import in bulk from an archive file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:7:"_import";a:6:{s:8:"filename";s:55:"adminzone/pages/modules/admin_cns_multi_moderations.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"_import";s:11:"description";s:54:"The actualiser to import in bulk from an archive file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:22:"_import_stock_response";a:5:{s:8:"filename";s:55:"adminzone/pages/modules/admin_cns_multi_moderations.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:62:"Path of the file (not on disk, just for reference as a title).";s:11:"phpdoc_name";s:4:"path";}i:1;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:5:"Data.";s:11:"phpdoc_name";s:4:"data";}i:2;a:5:{s:4:"name";s:12:"target_forum";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:72:"The forum multicode identifying where the multi-moderation is applicable";s:11:"phpdoc_name";s:12:"target_forum";}}s:4:"name";s:22:"_import_stock_response";s:11:"description";s:24:"Import a stock response.";s:5:"flags";a:0:{}}s:15:"get_form_fields";a:6:{s:8:"filename";s:55:"adminzone/pages/modules/admin_cns_multi_moderations.php";s:10:"parameters";a:8:{i:0;a:7:{s:4:"name";s:4:"name";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:32:"The name of the multi moderation";s:11:"phpdoc_name";s:4:"name";}i:1;a:7:{s:4:"name";s:9:"post_text";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:79:"The text to place as a post in the topic when the multi moderation is performed";s:11:"phpdoc_name";s:9:"post_text";}i:2;a:7:{s:4:"name";s:7:"move_to";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:47:"Move the topic to this forum (null: don't move)";s:11:"phpdoc_name";s:7:"move_to";}i:3;a:7:{s:4:"name";s:9:"pin_state";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:52:"What to change the pin state to (null: don't change)";s:11:"phpdoc_name";s:9:"pin_state";}i:4;a:7:{s:4:"name";s:10:"open_state";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:53:"What to change the open state to (null: don't change)";s:11:"phpdoc_name";s:10:"open_state";}i:5;a:7:{s:4:"name";s:10:"sink_state";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:53:"What to change the sink state to (null: don't change)";s:11:"phpdoc_name";s:10:"sink_state";}i:6;a:7:{s:4:"name";s:16:"forum_multi_code";s:7:"default";s:1:"*";s:11:"default_raw";s:3:"'*'";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:72:"The forum multicode identifying where the multi-moderation is applicable";s:11:"phpdoc_name";s:16:"forum_multi_code";}i:7;a:7:{s:4:"name";s:12:"title_suffix";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:16:"The title suffix";s:11:"phpdoc_name";s:12:"title_suffix";}}s:4:"name";s:15:"get_form_fields";s:11:"description";s:37:"Get Tempcode for adding/editing form.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:39:"A pair: The input fields, Hidden fields";}}s:34:"create_selection_list_choose_table";a:6:{s:8:"filename";s:55:"adminzone/pages/modules/admin_cns_multi_moderations.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"url_map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:55:"Details to go to build_url for link to the next screen.";s:11:"phpdoc_name";s:7:"url_map";}}s:4:"name";s:34:"create_selection_list_choose_table";s:11:"description";s:36:"Standard crud_module table function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:76:"A pair: The choose table, Whether re-ordering is supported from this screen.";}}s:29:"create_selection_list_entries";a:6:{s:8:"filename";s:55:"adminzone/pages/modules/admin_cns_multi_moderations.php";s:10:"parameters";a:0:{}s:4:"name";s:29:"create_selection_list_entries";s:11:"description";s:35:"Standard crud_module list function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:18:"The selection list";}}s:17:"fill_in_edit_form";a:6:{s:8:"filename";s:55:"adminzone/pages/modules/admin_cns_multi_moderations.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:17:"fill_in_edit_form";s:11:"description";s:38:"Standard crud_module edit form filler.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:39:"A pair: The input fields, Hidden fields";}}s:17:"add_actualisation";a:6:{s:8:"filename";s:55:"adminzone/pages/modules/admin_cns_multi_moderations.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"add_actualisation";s:11:"description";s:36:"Standard crud_module add actualiser.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The entry added";}}s:18:"edit_actualisation";a:5:{s:8:"filename";s:55:"adminzone/pages/modules/admin_cns_multi_moderations.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:18:"edit_actualisation";s:11:"description";s:37:"Standard crud_module edit actualiser.";s:5:"flags";a:0:{}}s:20:"delete_actualisation";a:5:{s:8:"filename";s:55:"adminzone/pages/modules/admin_cns_multi_moderations.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"The entry being deleted";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:20:"delete_actualisation";s:11:"description";s:39:"Standard crud_module delete actualiser.";s:5:"flags";a:0:{}}}s:4:"name";s:34:"Module_admin_cns_multi_moderations";s:7:"comment";b:1;}s:31:"Module_admin_cns_post_templates";a:3:{s:9:"functions";a:13:{s:16:"get_entry_points";a:6:{s:8:"filename";s:52:"adminzone/pages/modules/admin_cns_post_templates.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:52:"adminzone/pages/modules/admin_cns_post_templates.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:9:"top_level";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:77:"Whether this is running at the top level, prior to having sub-objects called.";s:11:"phpdoc_name";s:9:"top_level";}i:1;a:7:{s:4:"name";s:4:"type";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:80:"The screen type to consider for metadata purposes (null: read from environment).";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:9:"run_start";a:6:{s:8:"filename";s:52:"adminzone/pages/modules/admin_cns_post_templates.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:28:"The type of module execution";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:9:"run_start";s:11:"description";s:31:"Standard crud_module run_start.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:21:"The output of the run";}}s:6:"browse";a:6:{s:8:"filename";s:52:"adminzone/pages/modules/admin_cns_post_templates.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"browse";s:11:"description";s:50:"The do-next manager for before content management.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:6:"import";a:6:{s:8:"filename";s:52:"adminzone/pages/modules/admin_cns_post_templates.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"import";s:11:"description";s:46:"The UI to import in bulk from an archive file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:7:"_import";a:6:{s:8:"filename";s:52:"adminzone/pages/modules/admin_cns_post_templates.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"_import";s:11:"description";s:54:"The actualiser to import in bulk from an archive file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:22:"_import_stock_response";a:5:{s:8:"filename";s:52:"adminzone/pages/modules/admin_cns_post_templates.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:62:"Path of the file (not on disk, just for reference as a title).";s:11:"phpdoc_name";s:4:"path";}i:1;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:5:"Data.";s:11:"phpdoc_name";s:4:"data";}i:2;a:5:{s:4:"name";s:12:"target_forum";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:72:"The forum multicode identifying where the multi-moderation is applicable";s:11:"phpdoc_name";s:12:"target_forum";}}s:4:"name";s:22:"_import_stock_response";s:11:"description";s:24:"Import a stock response.";s:5:"flags";a:0:{}}s:34:"create_selection_list_choose_table";a:6:{s:8:"filename";s:52:"adminzone/pages/modules/admin_cns_post_templates.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"url_map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:55:"Details to go to build_url for link to the next screen.";s:11:"phpdoc_name";s:7:"url_map";}}s:4:"name";s:34:"create_selection_list_choose_table";s:11:"description";s:36:"Standard crud_module table function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:104:"A quartet: The choose table, Whether re-ordering is supported from this screen, Search URL, Archive URL.";}}s:15:"get_form_fields";a:6:{s:8:"filename";s:52:"adminzone/pages/modules/admin_cns_post_templates.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:5:"title";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:37:"The title (name) of the post template";s:11:"phpdoc_name";s:5:"title";}i:1;a:7:{s:4:"name";s:4:"text";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:29:"The actual post template text";s:11:"phpdoc_name";s:4:"text";}i:2;a:7:{s:4:"name";s:16:"forum_multi_code";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:49:"Multi-code identifying forums it is applicable to";s:11:"phpdoc_name";s:16:"forum_multi_code";}i:3;a:7:{s:4:"name";s:18:"use_default_forums";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:56:"Whether to use as the default post for applicable forums";s:11:"phpdoc_name";s:18:"use_default_forums";}}s:4:"name";s:15:"get_form_fields";s:11:"description";s:53:"Get Tempcode for a post template adding/editing form.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:39:"A pair: The input fields, Hidden fields";}}s:17:"fill_in_edit_form";a:6:{s:8:"filename";s:52:"adminzone/pages/modules/admin_cns_post_templates.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:17:"fill_in_edit_form";s:11:"description";s:38:"Standard crud_module edit form filler.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:39:"A pair: The input fields, Hidden fields";}}s:17:"add_actualisation";a:6:{s:8:"filename";s:52:"adminzone/pages/modules/admin_cns_post_templates.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"add_actualisation";s:11:"description";s:36:"Standard crud_module add actualiser.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The entry added";}}s:18:"edit_actualisation";a:5:{s:8:"filename";s:52:"adminzone/pages/modules/admin_cns_post_templates.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:18:"edit_actualisation";s:11:"description";s:37:"Standard crud_module edit actualiser.";s:5:"flags";a:0:{}}s:20:"delete_actualisation";a:5:{s:8:"filename";s:52:"adminzone/pages/modules/admin_cns_post_templates.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"The entry being deleted";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:20:"delete_actualisation";s:11:"description";s:39:"Standard crud_module delete actualiser.";s:5:"flags";a:0:{}}}s:4:"name";s:31:"Module_admin_cns_post_templates";s:7:"comment";b:1;}s:31:"Module_admin_cns_welcome_emails";a:3:{s:9:"functions";a:14:{s:4:"info";a:6:{s:8:"filename";s:52:"adminzone/pages/modules/admin_cns_welcome_emails.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:9:"uninstall";a:5:{s:8:"filename";s:52:"adminzone/pages/modules/admin_cns_welcome_emails.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"uninstall";s:11:"description";s:21:"Uninstall the module.";s:5:"flags";a:0:{}}s:7:"install";a:5:{s:8:"filename";s:52:"adminzone/pages/modules/admin_cns_welcome_emails.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:12:"upgrade_from";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"What version we're upgrading from (null: new install)";s:11:"phpdoc_name";s:12:"upgrade_from";}i:1;a:7:{s:4:"name";s:17:"upgrade_from_hack";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:94:"What hack version we're upgrading from (null: new-install/not-upgrading-from-a-hacked-version)";s:11:"phpdoc_name";s:17:"upgrade_from_hack";}}s:4:"name";s:7:"install";s:11:"description";s:19:"Install the module.";s:5:"flags";a:0:{}}s:16:"get_entry_points";a:6:{s:8:"filename";s:52:"adminzone/pages/modules/admin_cns_welcome_emails.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:52:"adminzone/pages/modules/admin_cns_welcome_emails.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:9:"top_level";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:77:"Whether this is running at the top level, prior to having sub-objects called.";s:11:"phpdoc_name";s:9:"top_level";}i:1;a:7:{s:4:"name";s:4:"type";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:80:"The screen type to consider for metadata purposes (null: read from environment).";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:9:"run_start";a:6:{s:8:"filename";s:52:"adminzone/pages/modules/admin_cns_welcome_emails.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:28:"The type of module execution";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:9:"run_start";s:11:"description";s:31:"Standard crud_module run_start.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:21:"The output of the run";}}s:6:"browse";a:6:{s:8:"filename";s:52:"adminzone/pages/modules/admin_cns_welcome_emails.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"browse";s:11:"description";s:50:"The do-next manager for before content management.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:15:"get_form_fields";a:6:{s:8:"filename";s:52:"adminzone/pages/modules/admin_cns_welcome_emails.php";s:10:"parameters";a:7:{i:0;a:7:{s:4:"name";s:4:"name";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:29:"A name for the Welcome E-mail";s:11:"phpdoc_name";s:4:"name";}i:1;a:7:{s:4:"name";s:7:"subject";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:33:"The subject of the Welcome E-mail";s:11:"phpdoc_name";s:7:"subject";}i:2;a:7:{s:4:"name";s:4:"text";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:38:"The message body of the Welcome E-mail";s:11:"phpdoc_name";s:4:"text";}i:3;a:7:{s:4:"name";s:9:"send_time";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:45:"The number of hours before sending the e-mail";s:11:"phpdoc_name";s:9:"send_time";}i:4;a:7:{s:4:"name";s:10:"newsletter";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:62:"What newsletter to send out to instead of members (null: none)";s:11:"phpdoc_name";s:10:"newsletter";}i:5;a:7:{s:4:"name";s:9:"usergroup";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:36:"The usergroup to tie to (null: none)";s:11:"phpdoc_name";s:9:"usergroup";}i:6;a:8:{s:4:"name";s:14:"usergroup_type";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:58:"How to send regarding usergroups (blank: indiscriminately)";s:11:"phpdoc_name";s:14:"usergroup_type";s:3:"set";s:20:"primary secondary """;}}s:4:"name";s:15:"get_form_fields";s:11:"description";s:37:"Get Tempcode for adding/editing form.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:39:"A pair: The input fields, Hidden fields";}}s:34:"create_selection_list_choose_table";a:6:{s:8:"filename";s:52:"adminzone/pages/modules/admin_cns_welcome_emails.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"url_map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:55:"Details to go to build_url for link to the next screen.";s:11:"phpdoc_name";s:7:"url_map";}}s:4:"name";s:34:"create_selection_list_choose_table";s:11:"description";s:36:"Standard crud_module table function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:76:"A pair: The choose table, Whether re-ordering is supported from this screen.";}}s:29:"create_selection_list_entries";a:6:{s:8:"filename";s:52:"adminzone/pages/modules/admin_cns_welcome_emails.php";s:10:"parameters";a:0:{}s:4:"name";s:29:"create_selection_list_entries";s:11:"description";s:35:"Standard crud_module list function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:18:"The selection list";}}s:17:"fill_in_edit_form";a:6:{s:8:"filename";s:52:"adminzone/pages/modules/admin_cns_welcome_emails.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:17:"fill_in_edit_form";s:11:"description";s:38:"Standard crud_module edit form filler.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:39:"A pair: The input fields, Hidden fields";}}s:17:"add_actualisation";a:6:{s:8:"filename";s:52:"adminzone/pages/modules/admin_cns_welcome_emails.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"add_actualisation";s:11:"description";s:36:"Standard crud_module add actualiser.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The entry added";}}s:18:"edit_actualisation";a:5:{s:8:"filename";s:52:"adminzone/pages/modules/admin_cns_welcome_emails.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:18:"edit_actualisation";s:11:"description";s:37:"Standard crud_module edit actualiser.";s:5:"flags";a:0:{}}s:20:"delete_actualisation";a:5:{s:8:"filename";s:52:"adminzone/pages/modules/admin_cns_welcome_emails.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"The entry being deleted";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:20:"delete_actualisation";s:11:"description";s:39:"Standard crud_module delete actualiser.";s:5:"flags";a:0:{}}}s:4:"name";s:31:"Module_admin_cns_welcome_emails";s:7:"comment";b:1;}s:21:"Module_admin_commandr";a:3:{s:9:"functions";a:7:{s:4:"info";a:6:{s:8:"filename";s:42:"adminzone/pages/modules/admin_commandr.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:16:"get_entry_points";a:6:{s:8:"filename";s:42:"adminzone/pages/modules/admin_commandr.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:9:"uninstall";a:5:{s:8:"filename";s:42:"adminzone/pages/modules/admin_commandr.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"uninstall";s:11:"description";s:21:"Uninstall the module.";s:5:"flags";a:0:{}}s:7:"install";a:5:{s:8:"filename";s:42:"adminzone/pages/modules/admin_commandr.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:12:"upgrade_from";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"What version we're upgrading from (null: new install)";s:11:"phpdoc_name";s:12:"upgrade_from";}i:1;a:7:{s:4:"name";s:17:"upgrade_from_hack";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:94:"What hack version we're upgrading from (null: new-install/not-upgrading-from-a-hacked-version)";s:11:"phpdoc_name";s:17:"upgrade_from_hack";}}s:4:"name";s:7:"install";s:11:"description";s:19:"Install the module.";s:5:"flags";a:0:{}}s:7:"pre_run";a:6:{s:8:"filename";s:42:"adminzone/pages/modules/admin_commandr.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:42:"adminzone/pages/modules/admin_commandr.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:8:"main_gui";a:6:{s:8:"filename";s:42:"adminzone/pages/modules/admin_commandr.php";s:10:"parameters";a:0:{}s:4:"name";s:8:"main_gui";s:11:"description";s:22:"The main Commandr GUI.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:21:"Module_admin_commandr";s:7:"comment";b:1;}s:19:"Module_admin_config";a:3:{s:9:"functions";a:15:{s:4:"info";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_config.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:16:"get_entry_points";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_config.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_config.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_config.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:13:"config_choose";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_config.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"config_choose";s:11:"description";s:49:"The UI to choose what configuration page to edit.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:15:"config_category";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_config.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"config_category";s:11:"description";s:36:"The UI to edit a configuration page.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:10:"config_set";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_config.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"config_set";s:11:"description";s:44:"The actualiser to edit a configuration page.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:4:"base";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_config.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"base";s:11:"description";s:37:"Redirect to the config_editor script.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:8:"upgrader";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_config.php";s:10:"parameters";a:0:{}s:4:"name";s:8:"upgrader";s:11:"description";s:32:"Redirect to the upgrader script.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:7:"backend";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_config.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"backend";s:11:"description";s:31:"Redirect to the backend script.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:11:"code_editor";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_config.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"code_editor";s:11:"description";s:35:"Redirect to the code_editor script.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:10:"xml_fields";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_config.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"xml_fields";s:11:"description";s:35:"The UI to edit the fields XML file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:11:"_xml_fields";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_config.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"_xml_fields";s:11:"description";s:43:"The UI actualiser edit the fields XML file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:15:"xml_breadcrumbs";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_config.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"xml_breadcrumbs";s:11:"description";s:40:"The UI to edit the breadcrumbs XML file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:16:"_xml_breadcrumbs";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_config.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"_xml_breadcrumbs";s:11:"description";s:48:"The UI actualiser edit the breadcrumbs XML file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:19:"Module_admin_config";s:7:"comment";b:1;}s:28:"Module_admin_content_reviews";a:3:{s:9:"functions";a:6:{s:4:"info";a:6:{s:8:"filename";s:49:"adminzone/pages/modules/admin_content_reviews.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:16:"get_entry_points";a:6:{s:8:"filename";s:49:"adminzone/pages/modules/admin_content_reviews.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:9:"uninstall";a:5:{s:8:"filename";s:49:"adminzone/pages/modules/admin_content_reviews.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"uninstall";s:11:"description";s:21:"Uninstall the module.";s:5:"flags";a:0:{}}s:7:"install";a:5:{s:8:"filename";s:49:"adminzone/pages/modules/admin_content_reviews.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:12:"upgrade_from";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"What version we're upgrading from (null: new install)";s:11:"phpdoc_name";s:12:"upgrade_from";}i:1;a:7:{s:4:"name";s:17:"upgrade_from_hack";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:94:"What hack version we're upgrading from (null: new-install/not-upgrading-from-a-hacked-version)";s:11:"phpdoc_name";s:17:"upgrade_from_hack";}}s:4:"name";s:7:"install";s:11:"description";s:19:"Install the module.";s:5:"flags";a:0:{}}s:7:"pre_run";a:6:{s:8:"filename";s:49:"adminzone/pages/modules/admin_content_reviews.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:49:"adminzone/pages/modules/admin_content_reviews.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:28:"Module_admin_content_reviews";s:7:"comment";b:1;}s:27:"Module_admin_custom_comcode";a:3:{s:9:"functions";a:14:{s:16:"get_entry_points";a:6:{s:8:"filename";s:48:"adminzone/pages/modules/admin_custom_comcode.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:4:"info";a:6:{s:8:"filename";s:48:"adminzone/pages/modules/admin_custom_comcode.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:9:"uninstall";a:5:{s:8:"filename";s:48:"adminzone/pages/modules/admin_custom_comcode.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"uninstall";s:11:"description";s:21:"Uninstall the module.";s:5:"flags";a:0:{}}s:7:"install";a:5:{s:8:"filename";s:48:"adminzone/pages/modules/admin_custom_comcode.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:12:"upgrade_from";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"What version we're upgrading from (null: new install)";s:11:"phpdoc_name";s:12:"upgrade_from";}i:1;a:7:{s:4:"name";s:17:"upgrade_from_hack";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:94:"What hack version we're upgrading from (null: new-install/not-upgrading-from-a-hacked-version)";s:11:"phpdoc_name";s:17:"upgrade_from_hack";}}s:4:"name";s:7:"install";s:11:"description";s:19:"Install the module.";s:5:"flags";a:0:{}}s:7:"pre_run";a:6:{s:8:"filename";s:48:"adminzone/pages/modules/admin_custom_comcode.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:9:"top_level";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:77:"Whether this is running at the top level, prior to having sub-objects called.";s:11:"phpdoc_name";s:9:"top_level";}i:1;a:7:{s:4:"name";s:4:"type";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:80:"The screen type to consider for metadata purposes (null: read from environment).";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:9:"run_start";a:6:{s:8:"filename";s:48:"adminzone/pages/modules/admin_custom_comcode.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:28:"The type of module execution";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:9:"run_start";s:11:"description";s:31:"Standard crud_module run_start.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:21:"The output of the run";}}s:6:"browse";a:6:{s:8:"filename";s:48:"adminzone/pages/modules/admin_custom_comcode.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"browse";s:11:"description";s:50:"The do-next manager for before content management.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:34:"create_selection_list_choose_table";a:6:{s:8:"filename";s:48:"adminzone/pages/modules/admin_custom_comcode.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"url_map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:55:"Details to go to build_url for link to the next screen.";s:11:"phpdoc_name";s:7:"url_map";}}s:4:"name";s:34:"create_selection_list_choose_table";s:11:"description";s:36:"Standard crud_module table function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:76:"A pair: The choose table, Whether re-ordering is supported from this screen.";}}s:15:"get_form_fields";a:6:{s:8:"filename";s:48:"adminzone/pages/modules/admin_custom_comcode.php";s:10:"parameters";a:10:{i:0;a:7:{s:4:"name";s:5:"title";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:42:"The title (name) of the Custom Comcode tag";s:11:"phpdoc_name";s:5:"title";}i:1;a:7:{s:4:"name";s:11:"description";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:26:"The description of the tag";s:11:"phpdoc_name";s:11:"description";}i:2;a:7:{s:4:"name";s:7:"enabled";s:7:"default";i:1;s:11:"default_raw";s:1:"1";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:26:"Whether the tag is enabled";s:11:"phpdoc_name";s:7:"enabled";}i:3;a:7:{s:4:"name";s:3:"tag";s:7:"default";s:4:"this";s:11:"default_raw";s:6:"'this'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:19:"The actual tag code";s:11:"phpdoc_name";s:3:"tag";}i:4;a:7:{s:4:"name";s:7:"replace";s:7:"default";s:58:"{content}";s:11:"default_raw";s:60:"'{content}'";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:28:"What to replace the tag with";s:11:"phpdoc_name";s:7:"replace";}i:5;a:7:{s:4:"name";s:7:"example";s:7:"default";s:28:"[thiscolor="red"]blah[/this]";s:11:"default_raw";s:30:"'[thiscolor="red"]blah[/this]'";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:13:"Example usage";s:11:"phpdoc_name";s:7:"example";}i:6;a:7:{s:4:"name";s:10:"parameters";s:7:"default";s:11:"color=black";s:11:"default_raw";s:13:"'color=black'";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:43:"Comma-separated list of accepted parameters";s:11:"phpdoc_name";s:10:"parameters";}i:7;a:7:{s:4:"name";s:13:"dangerous_tag";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:29:"Whether it is a dangerous tag";s:11:"phpdoc_name";s:13:"dangerous_tag";}i:8;a:7:{s:4:"name";s:9:"block_tag";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:25:"Whether it is a block tag";s:11:"phpdoc_name";s:9:"block_tag";}i:9;a:7:{s:4:"name";s:11:"textual_tag";s:7:"default";i:1;s:11:"default_raw";s:1:"1";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:27:"Whether it is a textual tag";s:11:"phpdoc_name";s:11:"textual_tag";}}s:4:"name";s:15:"get_form_fields";s:11:"description";s:58:"Get Tempcode for a Custom Comcode tag adding/editing form.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:39:"A pair: The input fields, Hidden fields";}}s:17:"fill_in_edit_form";a:6:{s:8:"filename";s:48:"adminzone/pages/modules/admin_custom_comcode.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:17:"fill_in_edit_form";s:11:"description";s:38:"Standard crud_module edit form filler.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:39:"A pair: The input fields, Hidden fields";}}s:17:"add_actualisation";a:6:{s:8:"filename";s:48:"adminzone/pages/modules/admin_custom_comcode.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"add_actualisation";s:11:"description";s:36:"Standard crud_module add actualiser.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The entry added";}}s:18:"edit_actualisation";a:5:{s:8:"filename";s:48:"adminzone/pages/modules/admin_custom_comcode.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:18:"edit_actualisation";s:11:"description";s:37:"Standard crud_module edit actualiser.";s:5:"flags";a:0:{}}s:26:"check_parameters_all_there";a:5:{s:8:"filename";s:48:"adminzone/pages/modules/admin_custom_comcode.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:11:"_parameters";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:21:"Parameters configured";s:11:"phpdoc_name";s:11:"_parameters";}i:1;a:5:{s:4:"name";s:7:"replace";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:22:"Text to replace within";s:11:"phpdoc_name";s:7:"replace";}}s:4:"name";s:26:"check_parameters_all_there";s:11:"description";s:58:"Check defined parameters are consistent with replace text.";s:5:"flags";a:0:{}}s:20:"delete_actualisation";a:5:{s:8:"filename";s:48:"adminzone/pages/modules/admin_custom_comcode.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"The entry being deleted";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:20:"delete_actualisation";s:11:"description";s:39:"Standard crud_module delete actualiser.";s:5:"flags";a:0:{}}}s:4:"name";s:27:"Module_admin_custom_comcode";s:7:"comment";b:1;}s:20:"Module_admin_debrand";a:3:{s:9:"functions";a:6:{s:4:"info";a:6:{s:8:"filename";s:41:"adminzone/pages/modules/admin_debrand.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:16:"get_entry_points";a:6:{s:8:"filename";s:41:"adminzone/pages/modules/admin_debrand.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:41:"adminzone/pages/modules/admin_debrand.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:41:"adminzone/pages/modules/admin_debrand.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:6:"browse";a:6:{s:8:"filename";s:41:"adminzone/pages/modules/admin_debrand.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"browse";s:11:"description";s:37:"The UI for managing super debranding.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:6:"actual";a:6:{s:8:"filename";s:41:"adminzone/pages/modules/admin_debrand.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"actual";s:11:"description";s:36:"The actualiser for super debranding.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:20:"Module_admin_debrand";s:7:"comment";b:1;}s:22:"Module_admin_ecommerce";a:3:{s:9:"functions";a:13:{s:4:"info";a:6:{s:8:"filename";s:43:"adminzone/pages/modules/admin_ecommerce.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:16:"get_entry_points";a:6:{s:8:"filename";s:43:"adminzone/pages/modules/admin_ecommerce.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:43:"adminzone/pages/modules/admin_ecommerce.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:9:"top_level";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:77:"Whether this is running at the top level, prior to having sub-objects called.";s:11:"phpdoc_name";s:9:"top_level";}i:1;a:7:{s:4:"name";s:4:"type";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:80:"The screen type to consider for metadata purposes (null: read from environment).";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:9:"run_start";a:6:{s:8:"filename";s:43:"adminzone/pages/modules/admin_ecommerce.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:28:"The type of module execution";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:9:"run_start";s:11:"description";s:31:"Standard crud_module run_start.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:21:"The output of the run";}}s:6:"browse";a:6:{s:8:"filename";s:43:"adminzone/pages/modules/admin_ecommerce.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"browse";s:11:"description";s:48:"The do-next manager for before setup management.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:15:"get_form_fields";a:6:{s:8:"filename";s:43:"adminzone/pages/modules/admin_ecommerce.php";s:10:"parameters";a:14:{i:0;a:7:{s:4:"name";s:5:"title";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:9:"The title";s:11:"phpdoc_name";s:5:"title";}i:1;a:7:{s:4:"name";s:11:"description";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:15:"The description";s:11:"phpdoc_name";s:11:"description";}i:2;a:7:{s:4:"name";s:4:"cost";s:7:"default";s:4:"9.99";s:11:"default_raw";s:6:"'9.99'";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"The cost";s:11:"phpdoc_name";s:4:"cost";}i:3;a:7:{s:4:"name";s:6:"length";s:7:"default";i:12;s:11:"default_raw";s:2:"12";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:10:"The length";s:11:"phpdoc_name";s:6:"length";}i:4;a:8:{s:4:"name";s:12:"length_units";s:7:"default";s:1:"m";s:11:"default_raw";s:3:"'m'";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:24:"The units for the length";s:11:"phpdoc_name";s:12:"length_units";s:3:"set";s:7:"y m d w";}i:5;a:7:{s:4:"name";s:10:"auto_recur";s:7:"default";i:1;s:11:"default_raw";s:1:"1";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:10:"Auto-recur";s:11:"phpdoc_name";s:10:"auto_recur";}i:6;a:7:{s:4:"name";s:8:"group_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:6:"?GROUP";s:11:"description";s:65:"The usergroup that purchasing gains membership to (null: not set)";s:11:"phpdoc_name";s:8:"group_id";}i:7;a:7:{s:4:"name";s:12:"uses_primary";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:55:"Whether this is applied to primary usergroup membership";s:11:"phpdoc_name";s:12:"uses_primary";}i:8;a:7:{s:4:"name";s:7:"enabled";s:7:"default";i:1;s:11:"default_raw";s:1:"1";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:33:"Whether this is currently enabled";s:11:"phpdoc_name";s:7:"enabled";}i:9;a:7:{s:4:"name";s:10:"mail_start";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:10:"?LONG_TEXT";s:11:"description";s:79:"The text of the e-mail to send out when a subscription is start (null: default)";s:11:"phpdoc_name";s:10:"mail_start";}i:10;a:7:{s:4:"name";s:8:"mail_end";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:10:"?LONG_TEXT";s:11:"description";s:79:"The text of the e-mail to send out when a subscription is ended (null: default)";s:11:"phpdoc_name";s:8:"mail_end";}i:11;a:7:{s:4:"name";s:9:"mail_uhoh";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:10:"?LONG_TEXT";s:11:"description";s:119:"The text of the e-mail to send out when a subscription cannot be renewed because the subproduct is gone (null: default)";s:11:"phpdoc_name";s:9:"mail_uhoh";}i:12;a:7:{s:4:"name";s:5:"mails";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:34:"Other e-mails to send (null: none)";s:11:"phpdoc_name";s:5:"mails";}i:13;a:7:{s:4:"name";s:2:"id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:39:"ID of existing subscription (null: new)";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:15:"get_form_fields";s:11:"description";s:37:"Get Tempcode for adding/editing form.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:61:"Tuple: The input fields, The hidden fields, The delete fields";}}s:34:"create_selection_list_choose_table";a:6:{s:8:"filename";s:43:"adminzone/pages/modules/admin_ecommerce.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"url_map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:55:"Details to go to build_url for link to the next screen.";s:11:"phpdoc_name";s:7:"url_map";}}s:4:"name";s:34:"create_selection_list_choose_table";s:11:"description";s:36:"Standard crud_module table function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:76:"A pair: The choose table, Whether re-ordering is supported from this screen.";}}s:29:"create_selection_list_entries";a:6:{s:8:"filename";s:43:"adminzone/pages/modules/admin_ecommerce.php";s:10:"parameters";a:0:{}s:4:"name";s:29:"create_selection_list_entries";s:11:"description";s:35:"Standard crud_module list function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:18:"The selection list";}}s:17:"fill_in_edit_form";a:6:{s:8:"filename";s:43:"adminzone/pages/modules/admin_ecommerce.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:17:"fill_in_edit_form";s:11:"description";s:38:"Standard crud_module edit form filler.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:61:"Tuple: The input fields, The hidden fields, The delete fields";}}s:6:"_mails";a:6:{s:8:"filename";s:43:"adminzone/pages/modules/admin_ecommerce.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"_mails";s:11:"description";s:60:"Get a mapping of extra mails for the usergroup subscription.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"Extra mails";}}s:17:"add_actualisation";a:6:{s:8:"filename";s:43:"adminzone/pages/modules/admin_ecommerce.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"add_actualisation";s:11:"description";s:36:"Standard crud_module add actualiser.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:48:"A pair: The entry added, Description about usage";}}s:18:"edit_actualisation";a:5:{s:8:"filename";s:43:"adminzone/pages/modules/admin_ecommerce.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:18:"edit_actualisation";s:11:"description";s:37:"Standard crud_module edit actualiser.";s:5:"flags";a:0:{}}s:20:"delete_actualisation";a:5:{s:8:"filename";s:43:"adminzone/pages/modules/admin_ecommerce.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"The entry being deleted";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:20:"delete_actualisation";s:11:"description";s:39:"Standard crud_module delete actualiser.";s:5:"flags";a:0:{}}}s:4:"name";s:22:"Module_admin_ecommerce";s:7:"comment";b:1;}s:27:"Module_admin_ecommerce_logs";a:3:{s:9:"functions";a:14:{s:4:"info";a:6:{s:8:"filename";s:48:"adminzone/pages/modules/admin_ecommerce_logs.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:16:"get_entry_points";a:6:{s:8:"filename";s:48:"adminzone/pages/modules/admin_ecommerce_logs.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:48:"adminzone/pages/modules/admin_ecommerce_logs.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:48:"adminzone/pages/modules/admin_ecommerce_logs.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:6:"browse";a:6:{s:8:"filename";s:48:"adminzone/pages/modules/admin_ecommerce_logs.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"browse";s:11:"description";s:48:"The do-next manager for before audit management.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:4:"logs";a:6:{s:8:"filename";s:48:"adminzone/pages/modules/admin_ecommerce_logs.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"logs";s:11:"description";s:54:"The UI to view all point transactions ordered by date.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:7:"trigger";a:6:{s:8:"filename";s:48:"adminzone/pages/modules/admin_ecommerce_logs.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"trigger";s:11:"description";s:59:"The UI to take details on a manually triggered transaction.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"The UI.";}}s:8:"_trigger";a:6:{s:8:"filename";s:48:"adminzone/pages/modules/admin_ecommerce_logs.php";s:10:"parameters";a:0:{}s:4:"name";s:8:"_trigger";s:11:"description";s:52:"The actualiser for a manually triggered transaction.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:12:"_get_between";a:6:{s:8:"filename";s:48:"adminzone/pages/modules/admin_ecommerce_logs.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:21:"The title to display.";s:11:"phpdoc_name";s:5:"title";}}s:4:"name";s:12:"_get_between";s:11:"description";s:40:"An interface for choosing between dates.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:9:"get_types";a:6:{s:8:"filename";s:48:"adminzone/pages/modules/admin_ecommerce_logs.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:4:"from";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:19:"Start of time range";s:11:"phpdoc_name";s:4:"from";}i:1;a:5:{s:4:"name";s:2:"to";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:17:"End of time range";s:11:"phpdoc_name";s:2:"to";}i:2;a:7:{s:4:"name";s:21:"unpaid_invoices_count";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:146:"Whether to count unpaid invoices into this. This means any invoicing in transactions will be ignored, and instead invoicing will be read directly.";s:11:"phpdoc_name";s:21:"unpaid_invoices_count";}}s:4:"name";s:9:"get_types";s:11:"description";s:26:"Get transaction summaries.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:72:"A template-ready list of maps of summary for multiple transaction types.";}}s:9:"cash_flow";a:6:{s:8:"filename";s:48:"adminzone/pages/modules/admin_ecommerce_logs.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"cash_flow";s:11:"description";s:25:"Show a cash flow diagram.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:11:"profit_loss";a:6:{s:8:"filename";s:48:"adminzone/pages/modules/admin_ecommerce_logs.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"profit_loss";s:11:"description";s:27:"Show a profit/loss account.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:25:"view_manual_subscriptions";a:6:{s:8:"filename";s:48:"adminzone/pages/modules/admin_ecommerce_logs.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"view_manual_subscriptions";s:11:"description";s:26:"Show manual subscriptions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:19:"cancel_subscription";a:6:{s:8:"filename";s:48:"adminzone/pages/modules/admin_ecommerce_logs.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"cancel_subscription";s:11:"description";s:29:"Cancel a manual subscription.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:27:"Module_admin_ecommerce_logs";s:7:"comment";b:1;}s:22:"Module_admin_email_log";a:3:{s:9:"functions";a:10:{s:4:"info";a:6:{s:8:"filename";s:43:"adminzone/pages/modules/admin_email_log.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:16:"get_entry_points";a:6:{s:8:"filename";s:43:"adminzone/pages/modules/admin_email_log.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:43:"adminzone/pages/modules/admin_email_log.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:43:"adminzone/pages/modules/admin_email_log.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:4:"show";a:6:{s:8:"filename";s:43:"adminzone/pages/modules/admin_email_log.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"show";s:11:"description";s:42:"Get a list of all the e-mails sent/queued.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:4:"view";a:6:{s:8:"filename";s:43:"adminzone/pages/modules/admin_email_log.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"view";s:11:"description";s:29:"Get a map table for an email.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:4:"edit";a:6:{s:8:"filename";s:43:"adminzone/pages/modules/admin_email_log.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"edit";s:11:"description";s:40:"Get a form to edit/send/delete an email.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:5:"_edit";a:6:{s:8:"filename";s:43:"adminzone/pages/modules/admin_email_log.php";s:10:"parameters";a:0:{}s:4:"name";s:5:"_edit";s:11:"description";s:40:"Actualiser to edit/send/delete an email.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:9:"mass_send";a:6:{s:8:"filename";s:43:"adminzone/pages/modules/admin_email_log.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"mass_send";s:11:"description";s:29:"Actualiser to do a mass send.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:11:"mass_delete";a:6:{s:8:"filename";s:43:"adminzone/pages/modules/admin_email_log.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"mass_delete";s:11:"description";s:29:"Actualiser to do a mass send.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:22:"Module_admin_email_log";s:7:"comment";b:1;}s:21:"Module_admin_errorlog";a:3:{s:9:"functions";a:4:{s:4:"info";a:6:{s:8:"filename";s:42:"adminzone/pages/modules/admin_errorlog.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:16:"get_entry_points";a:6:{s:8:"filename";s:42:"adminzone/pages/modules/admin_errorlog.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:42:"adminzone/pages/modules/admin_errorlog.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:42:"adminzone/pages/modules/admin_errorlog.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:21:"Module_admin_errorlog";s:7:"comment";b:1;}s:34:"Module_admin_group_member_timeouts";a:3:{s:9:"functions";a:7:{s:4:"info";a:6:{s:8:"filename";s:55:"adminzone/pages/modules/admin_group_member_timeouts.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:16:"get_entry_points";a:6:{s:8:"filename";s:55:"adminzone/pages/modules/admin_group_member_timeouts.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:55:"adminzone/pages/modules/admin_group_member_timeouts.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:55:"adminzone/pages/modules/admin_group_member_timeouts.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:6:"manage";a:6:{s:8:"filename";s:55:"adminzone/pages/modules/admin_group_member_timeouts.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"manage";s:11:"description";s:39:"The UI to manage group member timeouts.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:4:"save";a:6:{s:8:"filename";s:55:"adminzone/pages/modules/admin_group_member_timeouts.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"save";s:11:"description";s:27:"Save group member timeouts.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:26:"_save_group_member_timeout";a:5:{s:8:"filename";s:55:"adminzone/pages/modules/admin_group_member_timeouts.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:12:"old_group_id";s:3:"ref";b:0;s:4:"type";s:6:"?GROUP";s:11:"description";s:40:"The usergroup ID before edit (null: N/A)";s:11:"phpdoc_name";s:12:"old_group_id";}i:1;a:5:{s:4:"name";s:8:"group_id";s:3:"ref";b:0;s:4:"type";s:5:"GROUP";s:11:"description";s:16:"The usergroup ID";s:11:"phpdoc_name";s:8:"group_id";}i:2;a:5:{s:4:"name";s:8:"username";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"The username";s:11:"phpdoc_name";s:8:"username";}i:3;a:5:{s:4:"name";s:4:"time";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:15:"The expiry time";s:11:"phpdoc_name";s:4:"time";}}s:4:"name";s:26:"_save_group_member_timeout";s:11:"description";s:27:"Save group member timeouts.";s:5:"flags";a:0:{}}}s:4:"name";s:34:"Module_admin_group_member_timeouts";s:7:"comment";b:1;}s:19:"Module_admin_import";a:3:{s:9:"functions";a:12:{s:4:"info";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_import.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:9:"uninstall";a:5:{s:8:"filename";s:40:"adminzone/pages/modules/admin_import.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"uninstall";s:11:"description";s:21:"Uninstall the module.";s:5:"flags";a:0:{}}s:7:"install";a:5:{s:8:"filename";s:40:"adminzone/pages/modules/admin_import.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:12:"upgrade_from";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"What version we're upgrading from (null: new install)";s:11:"phpdoc_name";s:12:"upgrade_from";}i:1;a:7:{s:4:"name";s:17:"upgrade_from_hack";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:94:"What hack version we're upgrading from (null: new-install/not-upgrading-from-a-hacked-version)";s:11:"phpdoc_name";s:17:"upgrade_from_hack";}}s:4:"name";s:7:"install";s:11:"description";s:19:"Install the module.";s:5:"flags";a:0:{}}s:16:"get_entry_points";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_import.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_import.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_import.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:15:"choose_importer";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_import.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"choose_importer";s:11:"description";s:29:"The UI to choose an importer.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:14:"choose_session";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_import.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"choose_session";s:11:"description";s:35:"The UI to choose an import session.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:15:"choose_session2";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_import.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"choose_session2";s:11:"description";s:33:"The UI to choose session details.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:14:"choose_actions";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_import.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:5:"extra";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:45:"Output to show from last action (blank: none)";s:11:"phpdoc_name";s:5:"extra";}}s:4:"name";s:14:"choose_actions";s:11:"description";s:32:"The UI to choose what to import.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:9:"do_import";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_import.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"do_import";s:11:"description";s:31:"The actualiser to do an import.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:10:"cns_switch";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_import.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"cns_switch";s:11:"description";s:117:"Special import-esque function to aid switching to Conversr after importing forum previously served by a forum driver.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:26:"Information about progress";}}}s:4:"name";s:19:"Module_admin_import";s:7:"comment";b:1;}s:21:"Module_admin_invoices";a:3:{s:9:"functions";a:11:{s:4:"info";a:6:{s:8:"filename";s:42:"adminzone/pages/modules/admin_invoices.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:16:"get_entry_points";a:6:{s:8:"filename";s:42:"adminzone/pages/modules/admin_invoices.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:42:"adminzone/pages/modules/admin_invoices.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:42:"adminzone/pages/modules/admin_invoices.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:6:"browse";a:6:{s:8:"filename";s:42:"adminzone/pages/modules/admin_invoices.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"browse";s:11:"description";s:50:"The do-next manager for before invoice management.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:3:"add";a:6:{s:8:"filename";s:42:"adminzone/pages/modules/admin_invoices.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"add";s:11:"description";s:21:"UI to add an invoice.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:14:"The interface.";}}s:4:"_add";a:6:{s:8:"filename";s:42:"adminzone/pages/modules/admin_invoices.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"_add";s:11:"description";s:29:"Actualiser to add an invoice.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:14:"The interface.";}}s:11:"outstanding";a:6:{s:8:"filename";s:42:"adminzone/pages/modules/admin_invoices.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"outstanding";s:11:"description";s:26:"Show outstanding invoices.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:14:"The interface.";}}s:11:"undelivered";a:6:{s:8:"filename";s:42:"adminzone/pages/modules/admin_invoices.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"undelivered";s:11:"description";s:26:"Show undelivered invoices.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:14:"The interface.";}}s:6:"delete";a:6:{s:8:"filename";s:42:"adminzone/pages/modules/admin_invoices.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"delete";s:11:"description";s:32:"Actualiser to delete an invoice.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The result.";}}s:7:"deliver";a:6:{s:8:"filename";s:42:"adminzone/pages/modules/admin_invoices.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"deliver";s:11:"description";s:33:"Actualiser to deliver an invoice.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"The result.";}}}s:4:"name";s:21:"Module_admin_invoices";s:7:"comment";b:1;}s:19:"Module_admin_ip_ban";a:3:{s:9:"functions";a:13:{s:4:"info";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_ip_ban.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:9:"uninstall";a:5:{s:8:"filename";s:40:"adminzone/pages/modules/admin_ip_ban.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"uninstall";s:11:"description";s:21:"Uninstall the module.";s:5:"flags";a:0:{}}s:7:"install";a:5:{s:8:"filename";s:40:"adminzone/pages/modules/admin_ip_ban.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:12:"upgrade_from";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"What version we're upgrading from (null: new install)";s:11:"phpdoc_name";s:12:"upgrade_from";}i:1;a:7:{s:4:"name";s:17:"upgrade_from_hack";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:94:"What hack version we're upgrading from (null: new-install/not-upgrading-from-a-hacked-version)";s:11:"phpdoc_name";s:17:"upgrade_from_hack";}}s:4:"name";s:7:"install";s:11:"description";s:19:"Install the module.";s:5:"flags";a:0:{}}s:16:"get_entry_points";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_ip_ban.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_ip_ban.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_ip_ban.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:3:"gui";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_ip_ban.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"gui";s:11:"description";s:31:"The UI for managing banned IPs.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:6:"actual";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_ip_ban.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"actual";s:11:"description";s:39:"The actualiser for managing banned IPs.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:17:"toggle_member_ban";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_ip_ban.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"toggle_member_ban";s:11:"description";s:64:"The actualiser to toggle a member ban. Only works with Conversr.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:20:"toggle_submitter_ban";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_ip_ban.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"toggle_submitter_ban";s:11:"description";s:41:"The actualiser to toggle a submitter ban.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:16:"syndicate_ip_ban";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_ip_ban.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"syndicate_ip_ban";s:11:"description";s:38:"The actualiser to syndicate an IP ban.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:13:"toggle_ip_ban";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_ip_ban.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"toggle_ip_ban";s:11:"description";s:35:"The actualiser to toggle an IP ban.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:9:"multi_ban";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_ip_ban.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"multi_ban";s:11:"description";s:50:"The actualiser to toggle a combined IP/member ban.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:19:"Module_admin_ip_ban";s:7:"comment";b:1;}s:17:"Module_admin_lang";a:3:{s:9:"functions";a:14:{s:4:"info";a:6:{s:8:"filename";s:38:"adminzone/pages/modules/admin_lang.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:16:"get_entry_points";a:6:{s:8:"filename";s:38:"adminzone/pages/modules/admin_lang.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:9:"uninstall";a:5:{s:8:"filename";s:38:"adminzone/pages/modules/admin_lang.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"uninstall";s:11:"description";s:21:"Uninstall the module.";s:5:"flags";a:0:{}}s:7:"pre_run";a:6:{s:8:"filename";s:38:"adminzone/pages/modules/admin_lang.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:38:"adminzone/pages/modules/admin_lang.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:11:"choose_lang";a:6:{s:8:"filename";s:38:"adminzone/pages/modules/admin_lang.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:42:"The title to show when choosing a language";s:11:"phpdoc_name";s:5:"title";}i:1;a:7:{s:4:"name";s:16:"choose_lang_file";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether to also choose a language file";s:11:"phpdoc_name";s:16:"choose_lang_file";}i:2;a:7:{s:4:"name";s:8:"add_lang";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:35:"Whether the user may add a language";s:11:"phpdoc_name";s:8:"add_lang";}i:3;a:7:{s:4:"name";s:4:"text";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:41:"Text message to show (Tempcode or string)";s:11:"phpdoc_name";s:4:"text";}i:4;a:7:{s:4:"name";s:10:"provide_na";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:32:"Whether to provide an N/A choice";s:11:"phpdoc_name";s:10:"provide_na";}i:5;a:7:{s:4:"name";s:10:"param_name";s:7:"default";s:4:"lang";s:11:"default_raw";s:6:"'lang'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:49:"The name of the parameter for specifying language";s:11:"phpdoc_name";s:10:"param_name";}}s:4:"name";s:11:"choose_lang";s:11:"description";s:28:"The UI to choose a language.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:17:"find_lang_matches";a:6:{s:8:"filename";s:38:"adminzone/pages/modules/admin_lang.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:3:"old";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:58:"The language string we are searching for the equivalent of";s:11:"phpdoc_name";s:3:"old";}i:1;a:5:{s:4:"name";s:4:"lang";s:3:"ref";b:0;s:4:"type";s:13:"LANGUAGE_NAME";s:11:"description";s:37:"The language we want an equivalent in";s:11:"phpdoc_name";s:4:"lang";}}s:4:"name";s:17:"find_lang_matches";s:11:"description";s:107:"Finds equivalents for a given string, in a different language, by automatic searching of codes and content.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:45:"The match (or blank if no match can be found)";}}s:9:"criticise";a:6:{s:8:"filename";s:38:"adminzone/pages/modules/admin_lang.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"criticise";s:11:"description";s:36:"The UI to criticise a language pack.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:17:"interface_content";a:6:{s:8:"filename";s:38:"adminzone/pages/modules/admin_lang.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"interface_content";s:11:"description";s:28:"The UI to translate content.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:16:"set_lang_content";a:6:{s:8:"filename";s:38:"adminzone/pages/modules/admin_lang.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"set_lang_content";s:11:"description";s:36:"The actualiser to translate content.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:14:"interface_code";a:6:{s:8:"filename";s:38:"adminzone/pages/modules/admin_lang.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"interface_code";s:11:"description";s:25:"The UI to translate code.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:15:"get_google_code";a:6:{s:8:"filename";s:38:"adminzone/pages/modules/admin_lang.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"in";s:3:"ref";b:0;s:4:"type";s:13:"LANGUAGE_NAME";s:11:"description";s:19:"The code to convert";s:11:"phpdoc_name";s:2:"in";}}s:4:"name";s:15:"get_google_code";s:11:"description";s:54:"Convert a standard language codename to a google code.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:50:"The converted code (or blank if none can be found)";}}s:13:"set_lang_code";a:6:{s:8:"filename";s:38:"adminzone/pages/modules/admin_lang.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"set_lang_code";s:11:"description";s:59:"The actualiser to translate code (called from this module).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:15:"set_lang_code_2";a:6:{s:8:"filename";s:38:"adminzone/pages/modules/admin_lang.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"set_lang_code_2";s:11:"description";s:89:"The actualiser to translate code (called externally, and may operate on many lang files).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:17:"Module_admin_lang";s:7:"comment";b:1;}s:19:"Module_admin_lookup";a:3:{s:9:"functions";a:4:{s:4:"info";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_lookup.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:16:"get_entry_points";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_lookup.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_lookup.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_lookup.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:19:"Module_admin_lookup";s:7:"comment";b:1;}s:18:"Module_admin_menus";a:3:{s:9:"functions";a:9:{s:4:"info";a:6:{s:8:"filename";s:39:"adminzone/pages/modules/admin_menus.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:16:"get_entry_points";a:6:{s:8:"filename";s:39:"adminzone/pages/modules/admin_menus.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:39:"adminzone/pages/modules/admin_menus.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:39:"adminzone/pages/modules/admin_menus.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:16:"choose_menu_name";a:6:{s:8:"filename";s:39:"adminzone/pages/modules/admin_menus.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"choose_menu_name";s:11:"description";s:52:"The UI to choose a menu to edit / create a new menu.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:9:"edit_menu";a:6:{s:8:"filename";s:39:"adminzone/pages/modules/admin_menus.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"edit_menu";s:11:"description";s:22:"The UI to edit a menu.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:11:"menu_branch";a:6:{s:8:"filename";s:39:"adminzone/pages/modules/admin_menus.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:48:"The ID of the branch we are displaying items for";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:6:"branch";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:36:"The parent branch holding the branch";s:11:"phpdoc_name";s:6:"branch";}i:2;a:5:{s:4:"name";s:5:"order";s:3:"ref";b:1;s:4:"type";s:7:"integer";s:11:"description";s:122:"The order this branch has in the editor (and due to linearly moving through, the number of branches shown assembled ready)";s:11:"phpdoc_name";s:5:"order";}i:3;a:5:{s:4:"name";s:18:"clickable_sections";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:55:"Whether childed branches themselves can have URLs (etc)";s:11:"phpdoc_name";s:18:"clickable_sections";}i:4;a:5:{s:4:"name";s:10:"menu_items";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"All rows on the menu";s:11:"phpdoc_name";s:10:"menu_items";}}s:4:"name";s:11:"menu_branch";s:11:"description";s:40:"Show a branch-editor of the menu editor.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:18:"The part of the UI";}}s:10:"_edit_menu";a:6:{s:8:"filename";s:39:"adminzone/pages/modules/admin_menus.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"_edit_menu";s:11:"description";s:30:"The actualiser to edit a menu.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:13:"add_menu_item";a:5:{s:8:"filename";s:39:"adminzone/pages/modules/admin_menus.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:4:"menu";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:35:"The name of the menu the item is on";s:11:"phpdoc_name";s:4:"menu";}i:1;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:63:"The ID of the menu item (i.e. what it is referenced as in POST)";s:11:"phpdoc_name";s:2:"id";}i:2;a:5:{s:4:"name";s:3:"ids";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:39:"The map of IDs on the menu (ID=>parent)";s:11:"phpdoc_name";s:3:"ids";}i:3;a:5:{s:4:"name";s:6:"parent";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:45:"The ID of the parent branch (null: no parent)";s:11:"phpdoc_name";s:6:"parent";}i:4;a:5:{s:4:"name";s:13:"old_menu_bits";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:80:"The map of menu id=>string language string IDs employed by items before the edit";s:11:"phpdoc_name";s:13:"old_menu_bits";}i:5;a:5:{s:4:"name";s:5:"order";s:3:"ref";b:1;s:4:"type";s:7:"integer";s:11:"description";s:122:"The order this branch has in the editor (and due to linearly moving through, the number of branches shown assembled ready)";s:11:"phpdoc_name";s:5:"order";}}s:4:"name";s:13:"add_menu_item";s:11:"description";s:37:"Add a menu item from details in POST.";s:5:"flags";a:0:{}}}s:4:"name";s:18:"Module_admin_menus";s:7:"comment";b:1;}s:22:"Module_admin_messaging";a:3:{s:9:"functions";a:9:{s:4:"info";a:6:{s:8:"filename";s:43:"adminzone/pages/modules/admin_messaging.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:9:"uninstall";a:5:{s:8:"filename";s:43:"adminzone/pages/modules/admin_messaging.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"uninstall";s:11:"description";s:21:"Uninstall the module.";s:5:"flags";a:0:{}}s:7:"install";a:5:{s:8:"filename";s:43:"adminzone/pages/modules/admin_messaging.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:12:"upgrade_from";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"What version we're upgrading from (null: new install)";s:11:"phpdoc_name";s:12:"upgrade_from";}i:1;a:7:{s:4:"name";s:17:"upgrade_from_hack";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:94:"What hack version we're upgrading from (null: new-install/not-upgrading-from-a-hacked-version)";s:11:"phpdoc_name";s:17:"upgrade_from_hack";}}s:4:"name";s:7:"install";s:11:"description";s:19:"Install the module.";s:5:"flags";a:0:{}}s:16:"get_entry_points";a:6:{s:8:"filename";s:43:"adminzone/pages/modules/admin_messaging.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:43:"adminzone/pages/modules/admin_messaging.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:43:"adminzone/pages/modules/admin_messaging.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:14:"choose_message";a:6:{s:8:"filename";s:43:"adminzone/pages/modules/admin_messaging.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"choose_message";s:11:"description";s:17:"Choose a message.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:26:"The message choose screen.";}}s:12:"view_message";a:6:{s:8:"filename";s:43:"adminzone/pages/modules/admin_messaging.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"view_message";s:11:"description";s:15:"View a message.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The message view screen.";}}s:19:"take_responsibility";a:6:{s:8:"filename";s:43:"adminzone/pages/modules/admin_messaging.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"take_responsibility";s:11:"description";s:43:"Take responsibility for handling a message.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:16:"Success message.";}}}s:4:"name";s:22:"Module_admin_messaging";s:7:"comment";b:1;}s:23:"Module_admin_newsletter";a:3:{s:9:"functions";a:27:{s:16:"get_entry_points";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_newsletter.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_newsletter.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:9:"top_level";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:77:"Whether this is running at the top level, prior to having sub-objects called.";s:11:"phpdoc_name";s:9:"top_level";}i:1;a:7:{s:4:"name";s:4:"type";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:80:"The screen type to consider for metadata purposes (null: read from environment).";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:9:"run_start";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_newsletter.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:28:"The type of module execution";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:9:"run_start";s:11:"description";s:31:"Standard crud_module run_start.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:21:"The output of the run";}}s:6:"browse";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_newsletter.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"browse";s:11:"description";s:50:"The do-next manager for before content management.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:12:"_count_level";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_newsletter.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:14:"The newsletter";s:11:"phpdoc_name";s:2:"id";}i:1;a:6:{s:4:"name";s:5:"level";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:20:"The newsletter level";s:11:"phpdoc_name";s:5:"level";s:5:"range";s:4:"-1 5";}i:2;a:5:{s:4:"name";s:4:"lang";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"The language";s:11:"phpdoc_name";s:4:"lang";}}s:4:"name";s:12:"_count_level";s:11:"description";s:76:"Count the number of users on a certain level and language of the newsletter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:9:"The count";}}s:18:"import_subscribers";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_newsletter.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"import_subscribers";s:11:"description";s:49:"The UI to import subscribers into the newsletter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:15:"bounce_filter_a";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_newsletter.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"bounce_filter_a";s:11:"description";s:53:"The UI to select an IMAP server for bounce filtering.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:15:"bounce_filter_b";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_newsletter.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"bounce_filter_b";s:11:"description";s:47:"The UI to select an inbox for bounce filtering.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:15:"bounce_filter_c";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_newsletter.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"bounce_filter_c";s:11:"description";s:45:"The UI to confirm which subscribers to prune.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:15:"bounce_filter_d";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_newsletter.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"bounce_filter_d";s:11:"description";s:36:"The actualiser to prune subscribers.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:16:"view_subscribers";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_newsletter.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"view_subscribers";s:11:"description";s:45:"The UI to view subscribers on the newsletter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:10:"whatsnew_1";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_newsletter.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"whatsnew_1";s:11:"description";s:92:"The UI to create an automated what's new newsletter. Select cut-off time and other settings.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:10:"whatsnew_2";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_newsletter.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"whatsnew_2";s:11:"description";s:79:"The UI to create an automated what's new newsletter. Select content categories.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:10:"whatsnew_3";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_newsletter.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"whatsnew_3";s:11:"description";s:91:"The UI to create an automated what's new newsletter. Pipe through to the newsletter screen.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:26:"_generate_whatsnew_comcode";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_newsletter.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:17:"chosen_categories";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"Category selection";s:11:"phpdoc_name";s:17:"chosen_categories";}i:1;a:5:{s:4:"name";s:7:"in_full";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:57:"Whether to show artices in full (as opposed to summaries)";s:11:"phpdoc_name";s:7:"in_full";}i:2;a:5:{s:4:"name";s:4:"lang";s:3:"ref";b:0;s:4:"type";s:13:"LANGUAGE_NAME";s:11:"description";s:19:"Language to send in";s:11:"phpdoc_name";s:4:"lang";}i:3;a:5:{s:4:"name";s:11:"cutoff_time";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:28:"When to cut off content from";s:11:"phpdoc_name";s:11:"cutoff_time";}}s:4:"name";s:26:"_generate_whatsnew_comcode";s:11:"description";s:45:"Generate Comcode for a what's new newsletter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:29:"The Comcode, in template form";}}s:8:"send_gui";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_newsletter.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:9:"_existing";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:28:"Default newsletter to put in";s:11:"phpdoc_name";s:9:"_existing";}}s:4:"name";s:8:"send_gui";s:11:"description";s:28:"The UI to send a newsletter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:12:"confirm_send";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_newsletter.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"confirm_send";s:11:"description";s:44:"The UI to confirm sending of our newsletter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:12:"send_message";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_newsletter.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"send_message";s:11:"description";s:36:"The actualiser to send a newsletter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:7:"archive";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_newsletter.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"archive";s:11:"description";s:43:"The UI to select to view a past newsletter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:4:"view";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_newsletter.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"view";s:11:"description";s:33:"The UI to view a past newsletter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:15:"get_form_fields";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_newsletter.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:5:"title";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:9:"The title";s:11:"phpdoc_name";s:5:"title";}i:1;a:7:{s:4:"name";s:11:"description";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:15:"The description";s:11:"phpdoc_name";s:11:"description";}}s:4:"name";s:15:"get_form_fields";s:11:"description";s:37:"Get Tempcode for adding/editing form.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:39:"A pair: The input fields, Hidden fields";}}s:34:"create_selection_list_choose_table";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_newsletter.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"url_map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:55:"Details to go to build_url for link to the next screen.";s:11:"phpdoc_name";s:7:"url_map";}}s:4:"name";s:34:"create_selection_list_choose_table";s:11:"description";s:36:"Standard crud_module table function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:76:"A pair: The choose table, Whether re-ordering is supported from this screen.";}}s:29:"create_selection_list_entries";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_newsletter.php";s:10:"parameters";a:0:{}s:4:"name";s:29:"create_selection_list_entries";s:11:"description";s:35:"Standard crud_module list function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:18:"The selection list";}}s:17:"fill_in_edit_form";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_newsletter.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:17:"fill_in_edit_form";s:11:"description";s:38:"Standard crud_module edit form filler.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:39:"A pair: The input fields, Hidden fields";}}s:17:"add_actualisation";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_newsletter.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"add_actualisation";s:11:"description";s:36:"Standard crud_module add actualiser.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The entry added";}}s:18:"edit_actualisation";a:5:{s:8:"filename";s:44:"adminzone/pages/modules/admin_newsletter.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:18:"edit_actualisation";s:11:"description";s:37:"Standard crud_module edit actualiser.";s:5:"flags";a:0:{}}s:20:"delete_actualisation";a:5:{s:8:"filename";s:44:"adminzone/pages/modules/admin_newsletter.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"The entry being deleted";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:20:"delete_actualisation";s:11:"description";s:39:"Standard crud_module delete actualiser.";s:5:"flags";a:0:{}}}s:4:"name";s:23:"Module_admin_newsletter";s:7:"comment";b:1;}s:26:"Module_admin_notifications";a:3:{s:9:"functions";a:6:{s:4:"info";a:6:{s:8:"filename";s:47:"adminzone/pages/modules/admin_notifications.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:16:"get_entry_points";a:6:{s:8:"filename";s:47:"adminzone/pages/modules/admin_notifications.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:9:"uninstall";a:5:{s:8:"filename";s:47:"adminzone/pages/modules/admin_notifications.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"uninstall";s:11:"description";s:21:"Uninstall the module.";s:5:"flags";a:0:{}}s:7:"install";a:5:{s:8:"filename";s:47:"adminzone/pages/modules/admin_notifications.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:12:"upgrade_from";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"What version we're upgrading from (null: new install)";s:11:"phpdoc_name";s:12:"upgrade_from";}i:1;a:7:{s:4:"name";s:17:"upgrade_from_hack";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:94:"What hack version we're upgrading from (null: new-install/not-upgrading-from-a-hacked-version)";s:11:"phpdoc_name";s:17:"upgrade_from_hack";}}s:4:"name";s:7:"install";s:11:"description";s:19:"Install the module.";s:5:"flags";a:0:{}}s:7:"pre_run";a:6:{s:8:"filename";s:47:"adminzone/pages/modules/admin_notifications.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:47:"adminzone/pages/modules/admin_notifications.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:26:"Module_admin_notifications";s:7:"comment";b:1;}s:19:"Module_admin_orders";a:3:{s:9:"functions";a:16:{s:4:"info";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_orders.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:16:"get_entry_points";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_orders.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_orders.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_orders.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:6:"browse";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_orders.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"browse";s:11:"description";s:37:"The do-next manager for order module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:11:"show_orders";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_orders.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"show_orders";s:11:"description";s:22:"UI to show all orders.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:14:"The interface.";}}s:13:"order_details";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_orders.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"order_details";s:11:"description";s:31:"UI to show details of an order.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:14:"The interface.";}}s:8:"dispatch";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_orders.php";s:10:"parameters";a:0:{}s:4:"name";s:8:"dispatch";s:11:"description";s:28:"Method to dispatch an order.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:14:"The interface.";}}s:8:"add_note";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_orders.php";s:10:"parameters";a:0:{}s:4:"name";s:8:"add_note";s:11:"description";s:27:"UI to add note to an order.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:14:"The interface.";}}s:9:"_add_note";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_orders.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"_add_note";s:11:"description";s:37:"Actualiser to add a note to an order.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:14:"The interface.";}}s:26:"send_dispatch_notification";a:5:{s:8:"filename";s:40:"adminzone/pages/modules/admin_orders.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"order_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:8:"Order ID";s:11:"phpdoc_name";s:8:"order_id";}}s:4:"name";s:26:"send_dispatch_notification";s:11:"description";s:47:"Method to dispatch a notification for an order.";s:5:"flags";a:0:{}}s:12:"delete_order";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_orders.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"delete_order";s:11:"description";s:23:"Method to delete order.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:14:"The interface.";}}s:12:"return_order";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_orders.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"return_order";s:11:"description";s:29:"Method to return order items.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:14:"The interface.";}}s:10:"hold_order";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_orders.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"hold_order";s:11:"description";s:24:"Method to hold an order.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:14:"The interface.";}}s:12:"order_export";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_orders.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"order_export";s:11:"description";s:44:"Method to display export order list filters.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:14:"The interface.";}}s:13:"_order_export";a:5:{s:8:"filename";s:40:"adminzone/pages/modules/admin_orders.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:6:"inline";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:45:"Whether to avoid exit (useful for unit test).";s:11:"phpdoc_name";s:6:"inline";}}s:4:"name";s:13:"_order_export";s:11:"description";s:50:"Actualiser to build CSV from the selected filters.";s:5:"flags";a:0:{}}}s:4:"name";s:19:"Module_admin_orders";s:7:"comment";b:1;}s:24:"Module_admin_permissions";a:3:{s:9:"functions";a:18:{s:4:"info";a:6:{s:8:"filename";s:45:"adminzone/pages/modules/admin_permissions.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:9:"uninstall";a:5:{s:8:"filename";s:45:"adminzone/pages/modules/admin_permissions.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"uninstall";s:11:"description";s:21:"Uninstall the module.";s:5:"flags";a:0:{}}s:7:"install";a:5:{s:8:"filename";s:45:"adminzone/pages/modules/admin_permissions.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:12:"upgrade_from";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"What version we're upgrading from (null: new install)";s:11:"phpdoc_name";s:12:"upgrade_from";}i:1;a:7:{s:4:"name";s:17:"upgrade_from_hack";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:94:"What hack version we're upgrading from (null: new-install/not-upgrading-from-a-hacked-version)";s:11:"phpdoc_name";s:17:"upgrade_from_hack";}}s:4:"name";s:7:"install";s:11:"description";s:19:"Install the module.";s:5:"flags";a:0:{}}s:16:"get_entry_points";a:6:{s:8:"filename";s:45:"adminzone/pages/modules/admin_permissions.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:45:"adminzone/pages/modules/admin_permissions.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:45:"adminzone/pages/modules/admin_permissions.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:6:"absorb";a:6:{s:8:"filename";s:45:"adminzone/pages/modules/admin_permissions.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"absorb";s:11:"description";s:39:"The UI to absorb usergroup permissions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:7:"_absorb";a:6:{s:8:"filename";s:45:"adminzone/pages/modules/admin_permissions.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"_absorb";s:11:"description";s:47:"The actualiser to absorb usergroup permissions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:11:"tree_editor";a:6:{s:8:"filename";s:45:"adminzone/pages/modules/admin_permissions.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"tree_editor";s:11:"description";s:168:"The UI to for the permissions-tree-editor (advanced substitute for the combination of the page permissions screen and various other structure/content-attached screens).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:14:"_access_header";a:6:{s:8:"filename";s:45:"adminzone/pages/modules/admin_permissions.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:12:"admin_groups";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:24:"List of admin usergroups";s:11:"phpdoc_name";s:12:"admin_groups";}i:1;a:5:{s:4:"name";s:6:"groups";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:28:"Map of usergroups (id=>name)";s:11:"phpdoc_name";s:6:"groups";}}s:4:"name";s:14:"_access_header";s:11:"description";s:88:"Show the header row for permission editor (all the usergroups, except admin usergroups).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:14:"The header row";}}s:12:"_choose_zone";a:6:{s:8:"filename";s:45:"adminzone/pages/modules/admin_permissions.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:45:"The title to use (output of get_screen_title)";s:11:"phpdoc_name";s:5:"title";}}s:4:"name";s:12:"_choose_zone";s:11:"description";s:57:"The UI to choose a zone to edit permissions for pages in.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:27:"interface_match_keys_access";a:6:{s:8:"filename";s:45:"adminzone/pages/modules/admin_permissions.php";s:10:"parameters";a:0:{}s:4:"name";s:27:"interface_match_keys_access";s:11:"description";s:32:"The UI to set match-keys access.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:21:"set_match_keys_access";a:6:{s:8:"filename";s:45:"adminzone/pages/modules/admin_permissions.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"set_match_keys_access";s:11:"description";s:39:"The actualiser to set match-key access.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:21:"interface_page_access";a:6:{s:8:"filename";s:45:"adminzone/pages/modules/admin_permissions.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"interface_page_access";s:11:"description";s:26:"The UI to set page access.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:15:"set_page_access";a:6:{s:8:"filename";s:45:"adminzone/pages/modules/admin_permissions.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"set_page_access";s:11:"description";s:34:"The actualiser to set page access.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:21:"_get_ordered_sections";a:6:{s:8:"filename";s:45:"adminzone/pages/modules/admin_permissions.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"_get_ordered_sections";s:11:"description";s:68:"Get the list of sections that we can work through, in logical order.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:16:"The section list";}}s:20:"interface_privileges";a:6:{s:8:"filename";s:45:"adminzone/pages/modules/admin_permissions.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"interface_privileges";s:11:"description";s:25:"The UI to set privileges.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:14:"set_privileges";a:6:{s:8:"filename";s:45:"adminzone/pages/modules/admin_permissions.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"set_privileges";s:11:"description";s:33:"The actualiser to set privileges.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:24:"Module_admin_permissions";s:7:"comment";b:1;}s:20:"Module_admin_phpinfo";a:3:{s:9:"functions";a:3:{s:4:"info";a:6:{s:8:"filename";s:41:"adminzone/pages/modules/admin_phpinfo.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:16:"get_entry_points";a:6:{s:8:"filename";s:41:"adminzone/pages/modules/admin_phpinfo.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:3:"run";a:6:{s:8:"filename";s:41:"adminzone/pages/modules/admin_phpinfo.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:20:"Module_admin_phpinfo";s:7:"comment";b:1;}s:19:"Module_admin_points";a:3:{s:9:"functions";a:9:{s:4:"info";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_points.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:16:"get_entry_points";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_points.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_points.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_points.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:12:"_get_between";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_points.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:21:"The title to display.";s:11:"phpdoc_name";s:5:"title";}}s:4:"name";s:12:"_get_between";s:11:"description";s:40:"An interface for choosing between dates.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:13:"points_export";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_points.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"points_export";s:11:"description";s:35:"Export a CSV of point transactions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:10:"points_log";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_points.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"points_log";s:11:"description";s:54:"The UI to view all point transactions ordered by date.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:7:"reverse";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_points.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"reverse";s:11:"description";s:51:"The actualiser to reverse a point gift transaction.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:13:"points_charge";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_points.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"points_charge";s:11:"description";s:41:"The actualiser to charge a member points.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:19:"Module_admin_points";s:7:"comment";b:1;}s:23:"Module_admin_pointstore";a:3:{s:9:"functions";a:9:{s:4:"info";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_pointstore.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:16:"get_entry_points";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_pointstore.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_pointstore.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_pointstore.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:24:"pointstore_log_interface";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_pointstore.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"pointstore_log_interface";s:11:"description";s:32:"The UI to view Point Store logs.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:16:"delete_log_entry";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_pointstore.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"delete_log_entry";s:11:"description";s:36:"The actualiser to delete a purchase.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:17:"_delete_log_entry";a:5:{s:8:"filename";s:44:"adminzone/pages/modules/admin_pointstore.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"date_and_time";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"The time of the purchase";s:11:"phpdoc_name";s:13:"date_and_time";}i:1;a:5:{s:4:"name";s:8:"memberid";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:33:"The member that made the purchase";s:11:"phpdoc_name";s:8:"memberid";}}s:4:"name";s:17:"_delete_log_entry";s:11:"description";s:30:"Delete a Point Store purchase.";s:5:"flags";a:0:{}}s:20:"interface_set_prices";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_pointstore.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"interface_set_prices";s:11:"description";s:33:"The UI to set Point Store prices.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:10:"set_prices";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_pointstore.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"set_prices";s:11:"description";s:41:"The actualiser to set Point Store prices.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:23:"Module_admin_pointstore";s:7:"comment";b:1;}s:17:"Module_admin_quiz";a:3:{s:9:"functions";a:14:{s:4:"info";a:6:{s:8:"filename";s:38:"adminzone/pages/modules/admin_quiz.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:16:"get_entry_points";a:6:{s:8:"filename";s:38:"adminzone/pages/modules/admin_quiz.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:38:"adminzone/pages/modules/admin_quiz.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:38:"adminzone/pages/modules/admin_quiz.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:6:"browse";a:6:{s:8:"filename";s:38:"adminzone/pages/modules/admin_quiz.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"browse";s:11:"description";s:48:"The do-next manager for before setup management.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:29:"create_selection_list_entries";a:6:{s:8:"filename";s:38:"adminzone/pages/modules/admin_quiz.php";s:10:"parameters";a:0:{}s:4:"name";s:29:"create_selection_list_entries";s:11:"description";s:35:"Standard crud_module list function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:18:"The selection list";}}s:11:"export_quiz";a:6:{s:8:"filename";s:38:"adminzone/pages/modules/admin_quiz.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"export_quiz";s:11:"description";s:21:"UI to export quiz CSV";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:12:"_export_quiz";a:5:{s:8:"filename";s:38:"adminzone/pages/modules/admin_quiz.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"_export_quiz";s:11:"description";s:29:"Actualiser to export quiz CSV";s:5:"flags";a:0:{}}s:11:"find_winner";a:6:{s:8:"filename";s:38:"adminzone/pages/modules/admin_quiz.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"find_winner";s:11:"description";s:21:"UI: find quiz winner.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:12:"_find_winner";a:6:{s:8:"filename";s:38:"adminzone/pages/modules/admin_quiz.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"_find_winner";s:11:"description";s:29:"Actualiser: find quiz winner.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:12:"quiz_results";a:6:{s:8:"filename";s:38:"adminzone/pages/modules/admin_quiz.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"quiz_results";s:11:"description";s:31:"Choose quiz to view results of.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:13:"_quiz_results";a:6:{s:8:"filename";s:38:"adminzone/pages/modules/admin_quiz.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"_quiz_results";s:11:"description";s:18:"View quiz results.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:14:"__quiz_results";a:6:{s:8:"filename";s:38:"adminzone/pages/modules/admin_quiz.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"__quiz_results";s:11:"description";s:29:"View a single filled-in quiz.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:19:"delete_quiz_results";a:6:{s:8:"filename";s:38:"adminzone/pages/modules/admin_quiz.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"delete_quiz_results";s:11:"description";s:25:"Delete some quiz results.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:17:"Module_admin_quiz";s:7:"comment";b:1;}s:26:"Module_admin_realtime_rain";a:3:{s:9:"functions";a:4:{s:4:"info";a:6:{s:8:"filename";s:47:"adminzone/pages/modules/admin_realtime_rain.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:16:"get_entry_points";a:6:{s:8:"filename";s:47:"adminzone/pages/modules/admin_realtime_rain.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:47:"adminzone/pages/modules/admin_realtime_rain.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:47:"adminzone/pages/modules/admin_realtime_rain.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:26:"Module_admin_realtime_rain";s:7:"comment";b:1;}s:22:"Module_admin_redirects";a:3:{s:9:"functions";a:8:{s:4:"info";a:6:{s:8:"filename";s:43:"adminzone/pages/modules/admin_redirects.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:9:"uninstall";a:5:{s:8:"filename";s:43:"adminzone/pages/modules/admin_redirects.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"uninstall";s:11:"description";s:21:"Uninstall the module.";s:5:"flags";a:0:{}}s:7:"install";a:5:{s:8:"filename";s:43:"adminzone/pages/modules/admin_redirects.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:12:"upgrade_from";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"What version we're upgrading from (null: new install)";s:11:"phpdoc_name";s:12:"upgrade_from";}i:1;a:7:{s:4:"name";s:17:"upgrade_from_hack";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:94:"What hack version we're upgrading from (null: new-install/not-upgrading-from-a-hacked-version)";s:11:"phpdoc_name";s:17:"upgrade_from_hack";}}s:4:"name";s:7:"install";s:11:"description";s:19:"Install the module.";s:5:"flags";a:0:{}}s:16:"get_entry_points";a:6:{s:8:"filename";s:43:"adminzone/pages/modules/admin_redirects.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:43:"adminzone/pages/modules/admin_redirects.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:43:"adminzone/pages/modules/admin_redirects.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:3:"gui";a:6:{s:8:"filename";s:43:"adminzone/pages/modules/admin_redirects.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"gui";s:11:"description";s:30:"The UI for managing redirects.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:6:"actual";a:6:{s:8:"filename";s:43:"adminzone/pages/modules/admin_redirects.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"actual";s:11:"description";s:38:"The actualiser for managing redirects.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:22:"Module_admin_redirects";s:7:"comment";b:1;}s:22:"Module_admin_revisions";a:3:{s:9:"functions";a:9:{s:4:"info";a:6:{s:8:"filename";s:43:"adminzone/pages/modules/admin_revisions.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:9:"uninstall";a:5:{s:8:"filename";s:43:"adminzone/pages/modules/admin_revisions.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"uninstall";s:11:"description";s:21:"Uninstall the module.";s:5:"flags";a:0:{}}s:7:"install";a:5:{s:8:"filename";s:43:"adminzone/pages/modules/admin_revisions.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:12:"upgrade_from";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"What version we're upgrading from (null: new install)";s:11:"phpdoc_name";s:12:"upgrade_from";}i:1;a:7:{s:4:"name";s:17:"upgrade_from_hack";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:94:"What hack version we're upgrading from (null: new-install/not-upgrading-from-a-hacked-version)";s:11:"phpdoc_name";s:17:"upgrade_from_hack";}}s:4:"name";s:7:"install";s:11:"description";s:19:"Install the module.";s:5:"flags";a:0:{}}s:16:"get_entry_points";a:6:{s:8:"filename";s:43:"adminzone/pages/modules/admin_revisions.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:43:"adminzone/pages/modules/admin_revisions.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:43:"adminzone/pages/modules/admin_revisions.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:3:"gui";a:6:{s:8:"filename";s:43:"adminzone/pages/modules/admin_revisions.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"gui";s:11:"description";s:135:"The UI to show the revision history for anything matching the query.More details are shown in the actionlog, which is linked from here.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:16:"_render_revision";a:6:{s:8:"filename";s:43:"adminzone/pages/modules/admin_revisions.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"revision";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"A revision map.";s:11:"phpdoc_name";s:8:"revision";}}s:4:"name";s:16:"_render_revision";s:11:"description";s:18:"Render a revision.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:45:"A rendered revision row (null: won't render).";}}s:6:"delete";a:6:{s:8:"filename";s:43:"adminzone/pages/modules/admin_revisions.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"delete";s:11:"description";s:36:"The actualiser to delete a revision.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:22:"Module_admin_revisions";s:7:"comment";b:1;}s:21:"Module_admin_security";a:3:{s:9:"functions";a:9:{s:4:"info";a:6:{s:8:"filename";s:42:"adminzone/pages/modules/admin_security.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:9:"uninstall";a:5:{s:8:"filename";s:42:"adminzone/pages/modules/admin_security.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"uninstall";s:11:"description";s:21:"Uninstall the module.";s:5:"flags";a:0:{}}s:7:"install";a:5:{s:8:"filename";s:42:"adminzone/pages/modules/admin_security.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:12:"upgrade_from";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"What version we're upgrading from (null: new install)";s:11:"phpdoc_name";s:12:"upgrade_from";}i:1;a:7:{s:4:"name";s:17:"upgrade_from_hack";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:94:"What hack version we're upgrading from (null: new-install/not-upgrading-from-a-hacked-version)";s:11:"phpdoc_name";s:17:"upgrade_from_hack";}}s:4:"name";s:7:"install";s:11:"description";s:19:"Install the module.";s:5:"flags";a:0:{}}s:16:"get_entry_points";a:6:{s:8:"filename";s:42:"adminzone/pages/modules/admin_security.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:42:"adminzone/pages/modules/admin_security.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:42:"adminzone/pages/modules/admin_security.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:18:"security_interface";a:6:{s:8:"filename";s:42:"adminzone/pages/modules/admin_security.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"security_interface";s:11:"description";s:29:"The UI to view security logs.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:12:"clean_alerts";a:6:{s:8:"filename";s:42:"adminzone/pages/modules/admin_security.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"clean_alerts";s:11:"description";s:42:"Actualiser to delete some unwanted alerts.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:27:"The success/redirect screen";}}s:10:"alert_view";a:6:{s:8:"filename";s:42:"adminzone/pages/modules/admin_security.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"alert_view";s:11:"description";s:32:"The UI to view a security alert.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:21:"Module_admin_security";s:7:"comment";b:1;}s:24:"Module_admin_setupwizard";a:3:{s:9:"functions";a:17:{s:4:"info";a:6:{s:8:"filename";s:45:"adminzone/pages/modules/admin_setupwizard.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:16:"get_entry_points";a:6:{s:8:"filename";s:45:"adminzone/pages/modules/admin_setupwizard.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:45:"adminzone/pages/modules/admin_setupwizard.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:45:"adminzone/pages/modules/admin_setupwizard.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:5:"step1";a:6:{s:8:"filename";s:45:"adminzone/pages/modules/admin_setupwizard.php";s:10:"parameters";a:0:{}s:4:"name";s:5:"step1";s:11:"description";s:37:"UI for a setup wizard step (welcome).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:5:"step2";a:6:{s:8:"filename";s:45:"adminzone/pages/modules/admin_setupwizard.php";s:10:"parameters";a:0:{}s:4:"name";s:5:"step2";s:11:"description";s:41:"UI for a setup wizard step (information).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:5:"step3";a:6:{s:8:"filename";s:45:"adminzone/pages/modules/admin_setupwizard.php";s:10:"parameters";a:0:{}s:4:"name";s:5:"step3";s:11:"description";s:36:"UI for a setup wizard step (config).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:5:"step4";a:6:{s:8:"filename";s:45:"adminzone/pages/modules/admin_setupwizard.php";s:10:"parameters";a:0:{}s:4:"name";s:5:"step4";s:11:"description";s:36:"UI for a setup wizard step (addons).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:5:"step5";a:6:{s:8:"filename";s:45:"adminzone/pages/modules/admin_setupwizard.php";s:10:"parameters";a:0:{}s:4:"name";s:5:"step5";s:11:"description";s:60:"UI for a setup wizard step (the zone/feature configuration).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:5:"step6";a:6:{s:8:"filename";s:45:"adminzone/pages/modules/admin_setupwizard.php";s:10:"parameters";a:0:{}s:4:"name";s:5:"step6";s:11:"description";s:42:"UI for a setup wizard step (block choice).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:14:"get_rules_file";a:6:{s:8:"filename";s:45:"adminzone/pages/modules/admin_setupwizard.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:41:"A code relating to which rules set to get";s:11:"phpdoc_name";s:4:"code";}}s:4:"name";s:14:"get_rules_file";s:11:"description";s:33:"Get Comcode to save as the rules.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"The Comcode";}}s:5:"step7";a:6:{s:8:"filename";s:45:"adminzone/pages/modules/admin_setupwizard.php";s:10:"parameters";a:0:{}s:4:"name";s:5:"step7";s:11:"description";s:35:"UI for a setup wizard step (rules).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:5:"step8";a:6:{s:8:"filename";s:45:"adminzone/pages/modules/admin_setupwizard.php";s:10:"parameters";a:0:{}s:4:"name";s:5:"step8";s:11:"description";s:35:"UI for a setup wizard step (theme).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:5:"step9";a:6:{s:8:"filename";s:45:"adminzone/pages/modules/admin_setupwizard.php";s:10:"parameters";a:0:{}s:4:"name";s:5:"step9";s:11:"description";s:42:"UI for a setup wizard step (close-status).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:6:"step10";a:6:{s:8:"filename";s:45:"adminzone/pages/modules/admin_setupwizard.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"step10";s:11:"description";s:34:"UI for a setup wizard step (done).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:13:"clear_caching";a:5:{s:8:"filename";s:45:"adminzone/pages/modules/admin_setupwizard.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"clear_caching";s:11:"description";s:42:"Clear caches we want to clear to clean up.";s:5:"flags";a:0:{}}s:6:"step11";a:6:{s:8:"filename";s:45:"adminzone/pages/modules/admin_setupwizard.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"step11";s:11:"description";s:105:"UI for a setup wizard step (done, message after cache emptied - need lower memory usage to rebuild them).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:24:"Module_admin_setupwizard";s:7:"comment";b:1;}s:20:"Module_admin_sitemap";a:3:{s:9:"functions";a:13:{s:4:"info";a:6:{s:8:"filename";s:41:"adminzone/pages/modules/admin_sitemap.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:16:"get_entry_points";a:6:{s:8:"filename";s:41:"adminzone/pages/modules/admin_sitemap.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:41:"adminzone/pages/modules/admin_sitemap.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:41:"adminzone/pages/modules/admin_sitemap.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:6:"browse";a:6:{s:8:"filename";s:41:"adminzone/pages/modules/admin_sitemap.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"browse";s:11:"description";s:123:"The do-next manager for before content management. This is intended for exceptional users who cannot use the sitemap editor";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:15:"do_next_manager";a:6:{s:8:"filename";s:41:"adminzone/pages/modules/admin_sitemap.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:38:"The title (output of get_screen_title)";s:11:"phpdoc_name";s:5:"title";}i:1;a:5:{s:4:"name";s:4:"page";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:46:"The name of the page just handled (null: none)";s:11:"phpdoc_name";s:4:"page";}i:2;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:60:"The name of the zone just handled (blank: none/welcome-zone)";s:11:"phpdoc_name";s:4:"zone";}i:3;a:5:{s:4:"name";s:15:"completion_text";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:33:"The text to show (blank: default)";s:11:"phpdoc_name";s:15:"completion_text";}}s:4:"name";s:15:"do_next_manager";s:11:"description";s:49:"The do-next manager for after content management.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:7:"sitemap";a:6:{s:8:"filename";s:41:"adminzone/pages/modules/admin_sitemap.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"sitemap";s:11:"description";s:30:"The UI for the sitemap editor.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:12:"_choose_zone";a:6:{s:8:"filename";s:41:"adminzone/pages/modules/admin_sitemap.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:38:"The title for the "choose a zone" page";s:11:"phpdoc_name";s:5:"title";}i:1;a:7:{s:4:"name";s:5:"no_go";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:61:"Zone to not allow the selection of (null: none to filter out)";s:11:"phpdoc_name";s:5:"no_go";}}s:4:"name";s:12:"_choose_zone";s:11:"description";s:24:"The UI to choose a zone.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:6:"delete";a:6:{s:8:"filename";s:41:"adminzone/pages/modules/admin_sitemap.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"delete";s:11:"description";s:24:"The UI to delete a page.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:7:"_delete";a:6:{s:8:"filename";s:41:"adminzone/pages/modules/admin_sitemap.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"_delete";s:11:"description";s:37:"The UI to confirm deletion of a page.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:8:"__delete";a:6:{s:8:"filename";s:41:"adminzone/pages/modules/admin_sitemap.php";s:10:"parameters";a:0:{}s:4:"name";s:8:"__delete";s:11:"description";s:32:"The actualiser to delete a page.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:4:"move";a:6:{s:8:"filename";s:41:"adminzone/pages/modules/admin_sitemap.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"move";s:11:"description";s:22:"The UI to move a page.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:5:"_move";a:6:{s:8:"filename";s:41:"adminzone/pages/modules/admin_sitemap.php";s:10:"parameters";a:0:{}s:4:"name";s:5:"_move";s:11:"description";s:30:"The actualiser to move a page.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:20:"Module_admin_sitemap";s:7:"comment";b:1;}s:16:"Module_admin_ssl";a:3:{s:9:"functions";a:6:{s:4:"info";a:6:{s:8:"filename";s:37:"adminzone/pages/modules/admin_ssl.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:16:"get_entry_points";a:6:{s:8:"filename";s:37:"adminzone/pages/modules/admin_ssl.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:37:"adminzone/pages/modules/admin_ssl.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:37:"adminzone/pages/modules/admin_ssl.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:13:"ssl_interface";a:6:{s:8:"filename";s:37:"adminzone/pages/modules/admin_ssl.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"ssl_interface";s:11:"description";s:33:"The UI for selecting HTTPS pages.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:3:"set";a:6:{s:8:"filename";s:37:"adminzone/pages/modules/admin_ssl.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"set";s:11:"description";s:41:"The actualiser for selecting HTTPS pages.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:16:"Module_admin_ssl";s:7:"comment";b:1;}s:18:"Module_admin_staff";a:3:{s:9:"functions";a:11:{s:4:"info";a:6:{s:8:"filename";s:39:"adminzone/pages/modules/admin_staff.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:9:"uninstall";a:5:{s:8:"filename";s:39:"adminzone/pages/modules/admin_staff.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"uninstall";s:11:"description";s:21:"Uninstall the module.";s:5:"flags";a:0:{}}s:7:"install";a:5:{s:8:"filename";s:39:"adminzone/pages/modules/admin_staff.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:12:"upgrade_from";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"What version we're upgrading from (null: new install)";s:11:"phpdoc_name";s:12:"upgrade_from";}i:1;a:7:{s:4:"name";s:17:"upgrade_from_hack";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:94:"What hack version we're upgrading from (null: new-install/not-upgrading-from-a-hacked-version)";s:11:"phpdoc_name";s:17:"upgrade_from_hack";}}s:4:"name";s:7:"install";s:11:"description";s:19:"Install the module.";s:5:"flags";a:0:{}}s:16:"get_entry_points";a:6:{s:8:"filename";s:39:"adminzone/pages/modules/admin_staff.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:39:"adminzone/pages/modules/admin_staff.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:39:"adminzone/pages/modules/admin_staff.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:15:"staff_interface";a:6:{s:8:"filename";s:39:"adminzone/pages/modules/admin_staff.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"staff_interface";s:11:"description";s:37:"The UI for editing staff information.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:10:"staff_edit";a:6:{s:8:"filename";s:39:"adminzone/pages/modules/admin_staff.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"staff_edit";s:11:"description";s:45:"The actualiser for editing staff information.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:11:"_staff_edit";a:5:{s:8:"filename";s:39:"adminzone/pages/modules/admin_staff.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:39:"The member ID of the staff being edited";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:4:"role";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:28:"The role of the staff member";s:11:"phpdoc_name";s:4:"role";}}s:4:"name";s:11:"_staff_edit";s:11:"description";s:23:"Edit a member of staff.";s:5:"flags";a:0:{}}s:10:"_staff_add";a:5:{s:8:"filename";s:39:"adminzone/pages/modules/admin_staff.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:36:"The ID of the member to add as staff";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:10:"_staff_add";s:11:"description";s:22:"Add a member of staff.";s:5:"flags";a:0:{}}s:13:"_staff_remove";a:5:{s:8:"filename";s:39:"adminzone/pages/modules/admin_staff.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:45:"The ID of the member to remove from the staff";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:13:"_staff_remove";s:11:"description";s:25:"Remove a member of staff.";s:5:"flags";a:0:{}}}s:4:"name";s:18:"Module_admin_staff";s:7:"comment";b:1;}s:18:"Module_admin_stats";a:3:{s:9:"functions";a:22:{s:4:"info";a:6:{s:8:"filename";s:39:"adminzone/pages/modules/admin_stats.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:9:"uninstall";a:5:{s:8:"filename";s:39:"adminzone/pages/modules/admin_stats.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"uninstall";s:11:"description";s:21:"Uninstall the module.";s:5:"flags";a:0:{}}s:7:"install";a:5:{s:8:"filename";s:39:"adminzone/pages/modules/admin_stats.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:12:"upgrade_from";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"What version we're upgrading from (null: new install)";s:11:"phpdoc_name";s:12:"upgrade_from";}i:1;a:7:{s:4:"name";s:17:"upgrade_from_hack";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:94:"What hack version we're upgrading from (null: new-install/not-upgrading-from-a-hacked-version)";s:11:"phpdoc_name";s:17:"upgrade_from_hack";}}s:4:"name";s:7:"install";s:11:"description";s:19:"Install the module.";s:5:"flags";a:0:{}}s:16:"get_entry_points";a:6:{s:8:"filename";s:39:"adminzone/pages/modules/admin_stats.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:39:"adminzone/pages/modules/admin_stats.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:39:"adminzone/pages/modules/admin_stats.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:6:"browse";a:6:{s:8:"filename";s:39:"adminzone/pages/modules/admin_stats.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"browse";s:11:"description";s:50:"The do-next manager for before content management.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:11:"get_between";a:6:{s:8:"filename";s:39:"adminzone/pages/modules/admin_stats.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:21:"The title to display.";s:11:"phpdoc_name";s:5:"title";}i:1;a:7:{s:4:"name";s:11:"stats_table";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:64:"Whether display is dependent on what we kept in our stats table.";s:11:"phpdoc_name";s:11:"stats_table";}i:2;a:7:{s:4:"name";s:12:"extra_fields";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:9:"?Tempcode";s:11:"description";s:37:"Extra fields to request (null: none).";s:11:"phpdoc_name";s:12:"extra_fields";}i:3;a:7:{s:4:"name";s:7:"message";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:9:"?Tempcode";s:11:"description";s:55:"The message to show for date selection (null: default).";s:11:"phpdoc_name";s:7:"message";}}s:4:"name";s:11:"get_between";s:11:"description";s:40:"An interface for choosing between dates.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:12:"users_online";a:6:{s:8:"filename";s:39:"adminzone/pages/modules/admin_stats.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"users_online";s:11:"description";s:38:"The UI to show user online statistics.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:16:"submission_rates";a:6:{s:8:"filename";s:39:"adminzone/pages/modules/admin_stats.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"submission_rates";s:11:"description";s:32:"The UI to show submission rates.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:10:"load_times";a:6:{s:8:"filename";s:39:"adminzone/pages/modules/admin_stats.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"load_times";s:11:"description";s:31:"The UI to show page load times.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:9:"referrers";a:6:{s:8:"filename";s:39:"adminzone/pages/modules/admin_stats.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"referrers";s:11:"description";s:25:"The UI to show referrers.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:8:"keywords";a:6:{s:8:"filename";s:39:"adminzone/pages/modules/admin_stats.php";s:10:"parameters";a:0:{}s:4:"name";s:8:"keywords";s:11:"description";s:35:"The UI to show top search keywords.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:10:"page_stats";a:6:{s:8:"filename";s:39:"adminzone/pages/modules/admin_stats.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"page_stats";s:11:"description";s:36:"The UI to show page view statistics.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:8:"overview";a:6:{s:8:"filename";s:39:"adminzone/pages/modules/admin_stats.php";s:10:"parameters";a:0:{}s:4:"name";s:8:"overview";s:11:"description";s:55:"The UI to show page view statistics for the front page.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:9:"show_page";a:6:{s:8:"filename";s:39:"adminzone/pages/modules/admin_stats.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"show_page";s:11:"description";s:54:"The UI to show page view statistics for a single page.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:5:"clear";a:6:{s:8:"filename";s:39:"adminzone/pages/modules/admin_stats.php";s:10:"parameters";a:0:{}s:4:"name";s:5:"clear";s:11:"description";s:27:"The UI to clear statistics.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:6:"_clear";a:6:{s:8:"filename";s:39:"adminzone/pages/modules/admin_stats.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"_clear";s:11:"description";s:35:"The actualiser to clear statistics.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:24:"install_geolocation_data";a:6:{s:8:"filename";s:39:"adminzone/pages/modules/admin_stats.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"install_geolocation_data";s:11:"description";s:25:"Install geolocation data.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:46:"The UI, showing the result of the installation";}}s:11:"views_per_x";a:6:{s:8:"filename";s:39:"adminzone/pages/modules/admin_stats.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:4:"page";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:13:"The page path";s:11:"phpdoc_name";s:4:"page";}i:1;a:5:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:56:"The statistic type (for use in sort parameters and such)";s:11:"phpdoc_name";s:4:"type";}i:2;a:5:{s:4:"name";s:11:"graph_title";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:38:"Language string ID for the graph title";s:11:"phpdoc_name";s:11:"graph_title";}i:3;a:5:{s:4:"name";s:17:"graph_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:44:"Language string ID for the graph description";s:11:"phpdoc_name";s:17:"graph_description";}i:4;a:7:{s:4:"name";s:5:"hours";s:7:"default";i:1;s:11:"default_raw";s:1:"1";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:25:"The steps of hours to use";s:11:"phpdoc_name";s:5:"hours";}i:5;a:7:{s:4:"name";s:5:"total";s:7:"default";i:24;s:11:"default_raw";s:2:"24";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:23:"The total hours to plot";s:11:"phpdoc_name";s:5:"total";}}s:4:"name";s:11:"views_per_x";s:11:"description";s:242:"Create a bar chart of the views the specified page has received in relation to the specified hours. The bar chart is stored in /data_custom/admin_stats/ as an SVG image, and the Tempcode for display of the graph and results table is returned.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:75:"A linear array containing the graph and list Tempcode objects, respectively";}}s:12:"page_x_share";a:6:{s:8:"filename";s:39:"adminzone/pages/modules/admin_stats.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:4:"page";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:13:"The page path";s:11:"phpdoc_name";s:4:"page";}i:1;a:5:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:20:"The statistic to use";s:11:"phpdoc_name";s:4:"type";}i:2;a:5:{s:4:"name";s:11:"graph_title";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:38:"Language string ID for the graph title";s:11:"phpdoc_name";s:11:"graph_title";}i:3;a:5:{s:4:"name";s:17:"graph_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:44:"Language string ID for the graph description";s:11:"phpdoc_name";s:17:"graph_description";}i:4;a:5:{s:4:"name";s:10:"list_title";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:37:"Language string ID for the list title";s:11:"phpdoc_name";s:10:"list_title";}}s:4:"name";s:12:"page_x_share";s:11:"description";s:220:"Create a pie chart of the ratios of the specified statistic for the specified page. The chart is saved as an SVG image in /data_custom/admin_stats/, and the Tempcode for display of the graph and results table is returned";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:75:"A linear array containing the graph and list Tempcode objects, respectively";}}s:10:"save_graph";a:5:{s:8:"filename";s:39:"adminzone/pages/modules/admin_stats.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:40:"Name of the graph (no path or extension)";s:11:"phpdoc_name";s:4:"path";}i:1;a:5:{s:4:"name";s:5:"graph";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:10:"SVG markup";s:11:"phpdoc_name";s:5:"graph";}}s:4:"name";s:10:"save_graph";s:11:"description";s:59:"Save a graph to the server so it can be viewed client-side.";s:5:"flags";a:0:{}}}s:4:"name";s:18:"Module_admin_stats";s:7:"comment";b:1;}s:19:"Module_admin_themes";a:3:{s:9:"functions";a:33:{s:4:"info";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_themes.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:9:"uninstall";a:5:{s:8:"filename";s:40:"adminzone/pages/modules/admin_themes.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"uninstall";s:11:"description";s:21:"Uninstall the module.";s:5:"flags";a:0:{}}s:7:"install";a:5:{s:8:"filename";s:40:"adminzone/pages/modules/admin_themes.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:12:"upgrade_from";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"What version we're upgrading from (null: new install)";s:11:"phpdoc_name";s:12:"upgrade_from";}i:1;a:7:{s:4:"name";s:17:"upgrade_from_hack";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:94:"What hack version we're upgrading from (null: new-install/not-upgrading-from-a-hacked-version)";s:11:"phpdoc_name";s:17:"upgrade_from_hack";}}s:4:"name";s:7:"install";s:11:"description";s:19:"Install the module.";s:5:"flags";a:0:{}}s:16:"get_entry_points";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_themes.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_themes.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_themes.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:13:"manage_themes";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_themes.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"manage_themes";s:11:"description";s:24:"The UI to manage themes.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:16:"get_theme_fields";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_themes.php";s:10:"parameters";a:7:{i:0;a:7:{s:4:"name";s:4:"name";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The name of the theme";s:11:"phpdoc_name";s:4:"name";}i:1;a:7:{s:4:"name";s:5:"title";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:15:"The theme title";s:11:"phpdoc_name";s:5:"title";}i:2;a:7:{s:4:"name";s:11:"description";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The theme description";s:11:"phpdoc_name";s:11:"description";}i:3;a:7:{s:4:"name";s:6:"author";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:39:"The theme author (null: current member)";s:11:"phpdoc_name";s:6:"author";}i:4;a:7:{s:4:"name";s:12:"mobile_pages";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:60:"Comma-separated list mobile-supporting pages (blank: all do)";s:11:"phpdoc_name";s:12:"mobile_pages";}i:5;a:7:{s:4:"name";s:13:"supports_wide";s:7:"default";i:1;s:11:"default_raw";s:1:"1";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:41:"Whether the theme supports 'wide' screens";s:11:"phpdoc_name";s:13:"supports_wide";}i:6;a:7:{s:4:"name";s:16:"use_on_all_zones";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether to use this theme on all zones";s:11:"phpdoc_name";s:16:"use_on_all_zones";}}s:4:"name";s:16:"get_theme_fields";s:11:"description";s:53:"Get standard form input fields for inputting a theme.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:10:"The fields";}}s:18:"save_theme_changes";a:5:{s:8:"filename";s:40:"adminzone/pages/modules/admin_themes.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"theme";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:21:"The name of the theme";s:11:"phpdoc_name";s:5:"theme";}}s:4:"name";s:18:"save_theme_changes";s:11:"description";s:57:"Common theme change saving for adding and editing themes.";s:5:"flags";a:0:{}}s:9:"add_theme";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_themes.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"add_theme";s:11:"description";s:22:"The UI to add a theme.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:10:"_add_theme";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_themes.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"_add_theme";s:11:"description";s:30:"The actualiser to add a theme.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:10:"edit_theme";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_themes.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"edit_theme";s:11:"description";s:30:"The UI to edit/rename a theme.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:11:"_edit_theme";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_themes.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"_edit_theme";s:11:"description";s:38:"The actualiser to edit/rename a theme.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:15:"do_next_manager";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_themes.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:38:"The title (output of get_screen_title)";s:11:"phpdoc_name";s:5:"title";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:46:"Some description to show, saying what happened";s:11:"phpdoc_name";s:11:"description";}i:2;a:5:{s:4:"name";s:5:"theme";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:31:"The theme that was just handled";s:11:"phpdoc_name";s:5:"theme";}i:3;a:5:{s:4:"name";s:4:"lang";s:3:"ref";b:0;s:4:"type";s:14:"?LANGUAGE_NAME";s:11:"description";s:70:"The language we were working in (null: autodetect) (blank: autodetect)";s:11:"phpdoc_name";s:4:"lang";}i:4;a:5:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:44:"Code to determine what kind of links to show";s:11:"phpdoc_name";s:4:"type";}i:5;a:5:{s:4:"name";s:4:"file";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:53:"ID of file that an edit link should load (blank: N/A)";s:11:"phpdoc_name";s:4:"file";}}s:4:"name";s:15:"do_next_manager";s:11:"description";s:58:"The do-next manager for after download content management.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:12:"choose_theme";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_themes.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:39:"The title to show when choosing a theme";s:11:"phpdoc_name";s:5:"title";}i:1;a:7:{s:4:"name";s:8:"lang_too";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:33:"Whether to also choose a language";s:11:"phpdoc_name";s:8:"lang_too";}}s:4:"name";s:12:"choose_theme";s:11:"description";s:38:"The UI to choose a theme to work with.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:10:"choose_css";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_themes.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"choose_css";s:11:"description";s:36:"The UI to choose a CSS file to edit.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:8:"edit_css";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_themes.php";s:10:"parameters";a:0:{}s:4:"name";s:8:"edit_css";s:11:"description";s:26:"The UI to edit a CSS file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:9:"_edit_css";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_themes.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"_edit_css";s:11:"description";s:34:"The actualiser to edit a CSS file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:23:"get_template_files_list";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_themes.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:5:"theme";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"The theme to search for";s:11:"phpdoc_name";s:5:"theme";}i:1;a:6:{s:4:"name";s:9:"directory";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:28:"Subdirectory type to look in";s:11:"phpdoc_name";s:9:"directory";s:3:"set";s:33:"templates javascript xml text css";}i:2;a:6:{s:4:"name";s:6:"suffix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:45:"File type suffix of template file (e.g. .tpl)";s:11:"phpdoc_name";s:6:"suffix";s:3:"set";s:23:".tpl .js .xml .txt .css";}i:3;a:7:{s:4:"name";s:15:"this_theme_only";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:19:"Just for this theme";s:11:"phpdoc_name";s:15:"this_theme_only";}}s:4:"name";s:23:"get_template_files_list";s:11:"description";s:34:"Get all the templates for a theme.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:31:"A map of the files (file=>path)";}}s:24:"_get_template_files_list";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_themes.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"base_dir";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:30:"The path to search relative to";s:11:"phpdoc_name";s:8:"base_dir";}i:1;a:5:{s:4:"name";s:6:"subdir";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:26:"The subdirectory to search";s:11:"phpdoc_name";s:6:"subdir";}i:2;a:6:{s:4:"name";s:6:"suffix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:45:"File type suffix of template file (e.g. .tpl)";s:11:"phpdoc_name";s:6:"suffix";s:3:"set";s:23:".tpl .js .xml .txt .css";}}s:4:"name";s:24:"_get_template_files_list";s:11:"description";s:83:"Get all the template files / revisions for a template file, in a certain directory.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:40:"A map of the revisions (file=>timestamp)";}}s:14:"edit_templates";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_themes.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"edit_templates";s:11:"description";s:36:"The UI to choose a template to edit.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:15:"_edit_templates";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_themes.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"_edit_templates";s:11:"description";s:26:"The UI to edit a template.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:13:"generate_from";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_themes.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"array";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:35:"A list of pairs (symbol name,arity)";s:11:"phpdoc_name";s:5:"array";}i:1;a:5:{s:4:"name";s:4:"stub";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:127:"The "stub" that determines what language strings to lookup for the given symbols, and generally, the collective naming strategy";s:11:"phpdoc_name";s:4:"stub";}i:2;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:56:"The ID of the actual template editor we are working with";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:13:"generate_from";s:11:"description";s:57:"Helper function to get Tempcode for insertion of symbols.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:12:"The Tempcode";}}s:16:"__edit_templates";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_themes.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"__edit_templates";s:11:"description";s:79:"The actualiser to edit a template. Always saves to the most overridden version.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:21:"get_image_form_fields";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_themes.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:5:"theme";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:31:"The theme the theme image is in";s:11:"phpdoc_name";s:5:"theme";}i:1;a:5:{s:4:"name";s:4:"lang";s:3:"ref";b:0;s:4:"type";s:13:"LANGUAGE_NAME";s:11:"description";s:35:"The language the theme image is for";s:11:"phpdoc_name";s:4:"lang";}i:2;a:7:{s:4:"name";s:2:"id";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:18:"The theme image ID";s:11:"phpdoc_name";s:2:"id";}i:3;a:7:{s:4:"name";s:4:"path";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:26:"The URL to the theme image";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:21:"get_image_form_fields";s:11:"description";s:51:"Get Tempcode for a theme image adding/editing form.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: the Tempcode for the visible fields, and the Tempcode for the hidden fields";}}s:9:"add_image";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_themes.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"add_image";s:11:"description";s:28:"The UI to add a theme image.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:10:"_add_image";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_themes.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"_add_image";s:11:"description";s:36:"The actualiser to add a theme image.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:13:"manage_images";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_themes.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"manage_images";s:11:"description";s:39:"The UI to select a theme image to edit.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:10:"edit_image";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_themes.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"edit_image";s:11:"description";s:29:"The UI to edit a theme image.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:11:"_edit_image";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_themes.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"_edit_image";s:11:"description";s:37:"The actualiser to edit a theme image.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:20:"list_screen_previews";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_themes.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"list_screen_previews";s:11:"description";s:27:"Shows the list of templates";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:19:"view_screen_preview";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_themes.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"view_screen_preview";s:11:"description";s:29:"Shows the preview of a screen";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:15:"tempcode_tester";a:6:{s:8:"filename";s:40:"adminzone/pages/modules/admin_themes.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"tempcode_tester";s:11:"description";s:34:"The UI to run the Tempcode tester.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:19:"Module_admin_themes";s:7:"comment";b:1;}s:24:"Module_admin_themewizard";a:3:{s:9:"functions";a:11:{s:4:"info";a:6:{s:8:"filename";s:45:"adminzone/pages/modules/admin_themewizard.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:16:"get_entry_points";a:6:{s:8:"filename";s:45:"adminzone/pages/modules/admin_themewizard.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:45:"adminzone/pages/modules/admin_themewizard.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:45:"adminzone/pages/modules/admin_themewizard.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:5:"step1";a:6:{s:8:"filename";s:45:"adminzone/pages/modules/admin_themewizard.php";s:10:"parameters";a:0:{}s:4:"name";s:5:"step1";s:11:"description";s:43:"UI for a theme wizard step (choose colour).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:5:"step2";a:6:{s:8:"filename";s:45:"adminzone/pages/modules/admin_themewizard.php";s:10:"parameters";a:0:{}s:4:"name";s:5:"step2";s:11:"description";s:44:"UI for a theme wizard step (choose preview).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:5:"step3";a:6:{s:8:"filename";s:45:"adminzone/pages/modules/admin_themewizard.php";s:10:"parameters";a:0:{}s:4:"name";s:5:"step3";s:11:"description";s:41:"UI for a theme wizard step (choose save).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:5:"step4";a:6:{s:8:"filename";s:45:"adminzone/pages/modules/admin_themewizard.php";s:10:"parameters";a:0:{}s:4:"name";s:5:"step4";s:11:"description";s:43:"UI for a theme wizard step (actualisation).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:9:"make_logo";a:6:{s:8:"filename";s:45:"adminzone/pages/modules/admin_themewizard.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"make_logo";s:11:"description";s:42:"UI for a logo wizard step (ask for input).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:10:"_make_logo";a:6:{s:8:"filename";s:45:"adminzone/pages/modules/admin_themewizard.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"_make_logo";s:11:"description";s:41:"UI for a logo wizard step (show preview).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:11:"__make_logo";a:6:{s:8:"filename";s:45:"adminzone/pages/modules/admin_themewizard.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"__make_logo";s:11:"description";s:32:"UI for a logo wizard step (set).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:24:"Module_admin_themewizard";s:7:"comment";b:1;}s:20:"Module_admin_tickets";a:3:{s:9:"functions";a:8:{s:4:"info";a:6:{s:8:"filename";s:41:"adminzone/pages/modules/admin_tickets.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:16:"get_entry_points";a:6:{s:8:"filename";s:41:"adminzone/pages/modules/admin_tickets.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:41:"adminzone/pages/modules/admin_tickets.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:41:"adminzone/pages/modules/admin_tickets.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:21:"ticket_type_interface";a:6:{s:8:"filename";s:41:"adminzone/pages/modules/admin_tickets.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"ticket_type_interface";s:11:"description";s:59:"The UI to choose a ticket type to edit, or to add a ticket.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:15:"add_ticket_type";a:6:{s:8:"filename";s:41:"adminzone/pages/modules/admin_tickets.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"add_ticket_type";s:11:"description";s:36:"The actualiser to add a ticket type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:16:"edit_ticket_type";a:6:{s:8:"filename";s:41:"adminzone/pages/modules/admin_tickets.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"edit_ticket_type";s:11:"description";s:24:"The UI to edit a ticket.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:17:"_edit_ticket_type";a:6:{s:8:"filename";s:41:"adminzone/pages/modules/admin_tickets.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"_edit_ticket_type";s:11:"description";s:44:"The actualiser to edit/delete a ticket type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:20:"Module_admin_tickets";s:7:"comment";b:1;}s:23:"Module_admin_trackbacks";a:3:{s:9:"functions";a:6:{s:4:"info";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_trackbacks.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:16:"get_entry_points";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_trackbacks.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_trackbacks.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_trackbacks.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:6:"choose";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_trackbacks.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"choose";s:11:"description";s:28:"The UI to delete trackbacks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:17:"delete_trackbacks";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_trackbacks.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"delete_trackbacks";s:11:"description";s:36:"The actualiser to delete trackbacks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:23:"Module_admin_trackbacks";s:7:"comment";b:1;}s:24:"Module_admin_unvalidated";a:3:{s:9:"functions";a:4:{s:4:"info";a:6:{s:8:"filename";s:45:"adminzone/pages/modules/admin_unvalidated.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:16:"get_entry_points";a:6:{s:8:"filename";s:45:"adminzone/pages/modules/admin_unvalidated.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:45:"adminzone/pages/modules/admin_unvalidated.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:45:"adminzone/pages/modules/admin_unvalidated.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:24:"Module_admin_unvalidated";s:7:"comment";b:1;}s:20:"Module_admin_version";a:3:{s:9:"functions";a:6:{s:4:"info";a:6:{s:8:"filename";s:41:"adminzone/pages/modules/admin_version.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:9:"uninstall";a:5:{s:8:"filename";s:41:"adminzone/pages/modules/admin_version.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"uninstall";s:11:"description";s:21:"Uninstall the module.";s:5:"flags";a:0:{}}s:7:"install";a:5:{s:8:"filename";s:41:"adminzone/pages/modules/admin_version.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:12:"upgrade_from";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"What version we're upgrading from (null: new install)";s:11:"phpdoc_name";s:12:"upgrade_from";}i:1;a:7:{s:4:"name";s:17:"upgrade_from_hack";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:94:"What hack version we're upgrading from (null: new-install/not-upgrading-from-a-hacked-version)";s:11:"phpdoc_name";s:17:"upgrade_from_hack";}}s:4:"name";s:7:"install";s:11:"description";s:19:"Install the module.";s:5:"flags";a:0:{}}s:16:"get_entry_points";a:6:{s:8:"filename";s:41:"adminzone/pages/modules/admin_version.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:41:"adminzone/pages/modules/admin_version.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:41:"adminzone/pages/modules/admin_version.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:20:"Module_admin_version";s:7:"comment";b:1;}s:23:"Module_admin_wordfilter";a:3:{s:9:"functions";a:11:{s:4:"info";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_wordfilter.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:9:"uninstall";a:5:{s:8:"filename";s:44:"adminzone/pages/modules/admin_wordfilter.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"uninstall";s:11:"description";s:21:"Uninstall the module.";s:5:"flags";a:0:{}}s:7:"install";a:5:{s:8:"filename";s:44:"adminzone/pages/modules/admin_wordfilter.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:12:"upgrade_from";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"What version we're upgrading from (null: new install)";s:11:"phpdoc_name";s:12:"upgrade_from";}i:1;a:7:{s:4:"name";s:17:"upgrade_from_hack";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:94:"What hack version we're upgrading from (null: new-install/not-upgrading-from-a-hacked-version)";s:11:"phpdoc_name";s:17:"upgrade_from_hack";}}s:4:"name";s:7:"install";s:11:"description";s:19:"Install the module.";s:5:"flags";a:0:{}}s:16:"get_entry_points";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_wordfilter.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_wordfilter.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_wordfilter.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:20:"wordfilter_interface";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_wordfilter.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"wordfilter_interface";s:11:"description";s:68:"The UI to choose a filtered-word to edit, or to add a filtered-word.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:8:"add_word";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_wordfilter.php";s:10:"parameters";a:0:{}s:4:"name";s:8:"add_word";s:11:"description";s:38:"The actualiser to add a filtered-word.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:9:"_add_word";a:5:{s:8:"filename";s:44:"adminzone/pages/modules/admin_wordfilter.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:4:"word";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:17:"The filtered-word";s:11:"phpdoc_name";s:4:"word";}i:1;a:5:{s:4:"name";s:11:"replacement";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:35:"Replacement (blank: block entirely)";s:11:"phpdoc_name";s:11:"replacement";}i:2;a:5:{s:4:"name";s:6:"substr";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:36:"Whether to perform a substring match";s:11:"phpdoc_name";s:6:"substr";}}s:4:"name";s:9:"_add_word";s:11:"description";s:20:"Add a filtered-word.";s:5:"flags";a:0:{}}s:11:"remove_word";a:6:{s:8:"filename";s:44:"adminzone/pages/modules/admin_wordfilter.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"remove_word";s:11:"description";s:41:"The actualiser to delete a filtered-word.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:12:"_remove_word";a:5:{s:8:"filename";s:44:"adminzone/pages/modules/admin_wordfilter.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"word";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:17:"The filtered-word";s:11:"phpdoc_name";s:4:"word";}}s:4:"name";s:12:"_remove_word";s:11:"description";s:23:"Delete a filtered-word.";s:5:"flags";a:0:{}}}s:4:"name";s:23:"Module_admin_wordfilter";s:7:"comment";b:1;}s:18:"Module_admin_zones";a:3:{s:9:"functions";a:16:{s:4:"info";a:6:{s:8:"filename";s:39:"adminzone/pages/modules/admin_zones.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:16:"get_entry_points";a:6:{s:8:"filename";s:39:"adminzone/pages/modules/admin_zones.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:9:"uninstall";a:5:{s:8:"filename";s:39:"adminzone/pages/modules/admin_zones.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"uninstall";s:11:"description";s:21:"Uninstall the module.";s:5:"flags";a:0:{}}s:7:"pre_run";a:6:{s:8:"filename";s:39:"adminzone/pages/modules/admin_zones.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:39:"adminzone/pages/modules/admin_zones.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:6:"browse";a:6:{s:8:"filename";s:39:"adminzone/pages/modules/admin_zones.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"browse";s:11:"description";s:50:"The do-next manager for before content management.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:6:"editor";a:6:{s:8:"filename";s:39:"adminzone/pages/modules/admin_zones.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"editor";s:11:"description";s:54:"The UI to choose a zone to edit using the zone editor.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:7:"_editor";a:6:{s:8:"filename";s:39:"adminzone/pages/modules/admin_zones.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"_editor";s:11:"description";s:27:"The UI for the zone editor.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:8:"__editor";a:6:{s:8:"filename";s:39:"adminzone/pages/modules/admin_zones.php";s:10:"parameters";a:0:{}s:4:"name";s:8:"__editor";s:11:"description";s:48:"The actualiser to edit a zone (via zone editor).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:15:"get_form_fields";a:6:{s:8:"filename";s:39:"adminzone/pages/modules/admin_zones.php";s:10:"parameters";a:7:{i:0;a:7:{s:4:"name";s:14:"in_zone_editor";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:36:"Whether the zone editor will be used";s:11:"phpdoc_name";s:14:"in_zone_editor";}i:1;a:7:{s:4:"name";s:5:"title";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:14:"The zone title";s:11:"phpdoc_name";s:5:"title";}i:2;a:7:{s:4:"name";s:12:"default_page";s:7:"default";s:5:"start";s:11:"default_raw";s:7:"'start'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The zones default page";s:11:"phpdoc_name";s:12:"default_page";}i:3;a:7:{s:4:"name";s:11:"header_text";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:15:"The header text";s:11:"phpdoc_name";s:11:"header_text";}i:4;a:7:{s:4:"name";s:5:"theme";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:29:"The theme (null: no override)";s:11:"phpdoc_name";s:5:"theme";}i:5;a:7:{s:4:"name";s:15:"require_session";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:56:"Whether the zone requires a session for pages to be used";s:11:"phpdoc_name";s:15:"require_session";}i:6;a:7:{s:4:"name";s:4:"zone";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:32:"Name of the zone (null: unknown)";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:15:"get_form_fields";s:11:"description";s:44:"Get Tempcode for a zone adding/editing form.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:73:"A tuple: The Tempcode for the fields, hidden fields, and extra JavaScript";}}s:8:"add_zone";a:6:{s:8:"filename";s:39:"adminzone/pages/modules/admin_zones.php";s:10:"parameters";a:0:{}s:4:"name";s:8:"add_zone";s:11:"description";s:21:"The UI to add a zone.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:9:"_add_zone";a:6:{s:8:"filename";s:39:"adminzone/pages/modules/admin_zones.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"_add_zone";s:11:"description";s:29:"The actualiser to add a zone.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:9:"edit_zone";a:6:{s:8:"filename";s:39:"adminzone/pages/modules/admin_zones.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:4:"type";s:7:"default";s:5:"_edit";s:11:"default_raw";s:7:"'_edit'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:18:"The follow-on type";s:11:"phpdoc_name";s:4:"type";}i:1;a:7:{s:4:"name";s:5:"title";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:9:"?Tempcode";s:11:"description";s:44:"The title to use (null: the EDIT_ZONE title)";s:11:"phpdoc_name";s:5:"title";}}s:4:"name";s:9:"edit_zone";s:11:"description";s:32:"The UI to choose a zone to edit.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:10:"_edit_zone";a:6:{s:8:"filename";s:39:"adminzone/pages/modules/admin_zones.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"_edit_zone";s:11:"description";s:22:"The UI to edit a zone.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:11:"__edit_zone";a:6:{s:8:"filename";s:39:"adminzone/pages/modules/admin_zones.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"__edit_zone";s:11:"description";s:30:"The actualiser to edit a zone.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:15:"set_permissions";a:5:{s:8:"filename";s:39:"adminzone/pages/modules/admin_zones.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:43:"The zone that we're setting permissions for";s:11:"phpdoc_name";s:4:"zone";}}s:4:"name";s:15:"set_permissions";s:11:"description";s:58:"Set zone access permissions from info in the POST request.";s:5:"flags";a:0:{}}}s:4:"name";s:18:"Module_admin_zones";s:7:"comment";b:1;}s:10:"Module_cms";a:3:{s:9:"functions";a:4:{s:4:"info";a:6:{s:8:"filename";s:25:"cms/pages/modules/cms.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:16:"get_entry_points";a:6:{s:8:"filename";s:25:"cms/pages/modules/cms.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:25:"cms/pages/modules/cms.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:25:"cms/pages/modules/cms.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:10:"Module_cms";s:7:"comment";b:1;}s:18:"Module_cms_authors";a:3:{s:9:"functions";a:12:{s:4:"info";a:6:{s:8:"filename";s:33:"cms/pages/modules/cms_authors.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:16:"get_entry_points";a:6:{s:8:"filename";s:33:"cms/pages/modules/cms_authors.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:23:"get_privilege_overrides";a:6:{s:8:"filename";s:33:"cms/pages/modules/cms_authors.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"get_privilege_overrides";s:11:"description";s:54:"Find privileges defined as overridable by this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:130:"A map of privileges that are overridable; privilege to 0 or 1. 0 means "not category overridable". 1 means "category overridable".";}}s:7:"pre_run";a:6:{s:8:"filename";s:33:"cms/pages/modules/cms_authors.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:33:"cms/pages/modules/cms_authors.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:6:"browse";a:6:{s:8:"filename";s:33:"cms/pages/modules/cms_authors.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"browse";s:11:"description";s:50:"The do-next manager for before content management.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:4:"_add";a:6:{s:8:"filename";s:33:"cms/pages/modules/cms_authors.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"_add";s:11:"description";s:24:"The UI to add an author.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:4:"__ad";a:6:{s:8:"filename";s:33:"cms/pages/modules/cms_authors.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"__ad";s:11:"description";s:32:"The actualiser to add an author.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:15:"do_next_manager";a:6:{s:8:"filename";s:33:"cms/pages/modules/cms_authors.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:38:"The title (output of get_screen_title)";s:11:"phpdoc_name";s:5:"title";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:46:"Some description to show, saying what happened";s:11:"phpdoc_name";s:11:"description";}i:2;a:7:{s:4:"name";s:6:"author";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:60:"The author we were working with (null: not working with one)";s:11:"phpdoc_name";s:6:"author";}}s:4:"name";s:15:"do_next_manager";s:11:"description";s:56:"The do-next manager for after author content management.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:4:"edit";a:6:{s:8:"filename";s:33:"cms/pages/modules/cms_authors.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"edit";s:11:"description";s:67:"The UI to edit an author (effectively deleting and re-adding them).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:6:"_merge";a:6:{s:8:"filename";s:33:"cms/pages/modules/cms_authors.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"_merge";s:11:"description";s:36:"The actualiser to merge two authors.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:29:"create_selection_list_authors";a:6:{s:8:"filename";s:33:"cms/pages/modules/cms_authors.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:2:"it";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:59:"The author to select by default (null: no specific default)";s:11:"phpdoc_name";s:2:"it";}}s:4:"name";s:29:"create_selection_list_authors";s:11:"description";s:22:"Get a list of authors.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:8:"The list";}}}s:4:"name";s:18:"Module_cms_authors";s:7:"comment";b:1;}s:18:"Module_cms_banners";a:3:{s:9:"functions";a:15:{s:16:"get_entry_points";a:6:{s:8:"filename";s:33:"cms/pages/modules/cms_banners.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:23:"get_privilege_overrides";a:6:{s:8:"filename";s:33:"cms/pages/modules/cms_banners.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"get_privilege_overrides";s:11:"description";s:54:"Find privileges defined as overridable by this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:130:"A map of privileges that are overridable; privilege to 0 or 1. 0 means "not category overridable". 1 means "category overridable".";}}s:7:"pre_run";a:6:{s:8:"filename";s:33:"cms/pages/modules/cms_banners.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:9:"top_level";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:77:"Whether this is running at the top level, prior to having sub-objects called.";s:11:"phpdoc_name";s:9:"top_level";}i:1;a:7:{s:4:"name";s:4:"type";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:80:"The screen type to consider for metadata purposes (null: read from environment).";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:9:"run_start";a:6:{s:8:"filename";s:33:"cms/pages/modules/cms_banners.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:28:"The type of module execution";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:9:"run_start";s:11:"description";s:31:"Standard crud_module run_start.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:21:"The output of the run";}}s:6:"browse";a:6:{s:8:"filename";s:33:"cms/pages/modules/cms_banners.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"browse";s:11:"description";s:50:"The do-next manager for before content management.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:34:"create_selection_list_choose_table";a:6:{s:8:"filename";s:33:"cms/pages/modules/cms_banners.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"url_map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:55:"Details to go to build_url for link to the next screen.";s:11:"phpdoc_name";s:7:"url_map";}}s:4:"name";s:34:"create_selection_list_choose_table";s:11:"description";s:36:"Standard crud_module table function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:76:"A pair: The choose table, Whether re-ordering is supported from this screen.";}}s:29:"create_selection_list_entries";a:6:{s:8:"filename";s:33:"cms/pages/modules/cms_banners.php";s:10:"parameters";a:0:{}s:4:"name";s:29:"create_selection_list_entries";s:11:"description";s:35:"Standard crud_module list function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:18:"The selection list";}}s:15:"get_form_fields";a:6:{s:8:"filename";s:33:"cms/pages/modules/cms_banners.php";s:10:"parameters";a:16:{i:0;a:7:{s:4:"name";s:4:"name";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:35:"The name of the banner (blank: new)";s:11:"phpdoc_name";s:4:"name";}i:1;a:7:{s:4:"name";s:9:"image_url";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:27:"The URL to the banner image";s:11:"phpdoc_name";s:9:"image_url";}i:2;a:7:{s:4:"name";s:8:"site_url";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:39:"The URL to the site the banner leads to";s:11:"phpdoc_name";s:8:"site_url";}i:3;a:7:{s:4:"name";s:7:"caption";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:25:"The caption of the banner";s:11:"phpdoc_name";s:7:"caption";}i:4;a:7:{s:4:"name";s:11:"direct_code";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:32:"Complete HTML/PHP for the banner";s:11:"phpdoc_name";s:11:"direct_code";}i:5;a:7:{s:4:"name";s:5:"notes";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:36:"Any notes associated with the banner";s:11:"phpdoc_name";s:5:"notes";}i:6;a:8:{s:4:"name";s:17:"importancemodulus";s:7:"default";i:3;s:11:"default_raw";s:1:"3";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:32:"The banners "importance modulus"";s:11:"phpdoc_name";s:17:"importancemodulus";s:5:"range";s:5:"1 max";}i:7;a:8:{s:4:"name";s:17:"campaignremaining";s:7:"default";i:50;s:11:"default_raw";s:2:"50";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:82:"The number of hits the banner may have (null: not applicable for this banner type)";s:11:"phpdoc_name";s:17:"campaignremaining";s:5:"range";s:5:"0 max";}i:8;a:8:{s:4:"name";s:8:"the_type";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:13:"SHORT_INTEGER";s:11:"description";s:40:"The type of banner (a BANNER_* constant)";s:11:"phpdoc_name";s:8:"the_type";s:3:"set";s:5:"0 1 2";}i:9;a:7:{s:4:"name";s:11:"expiry_date";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:5:"?TIME";s:11:"description";s:44:"The banner expiry date (null: never expires)";s:11:"phpdoc_name";s:11:"expiry_date";}i:10;a:7:{s:4:"name";s:9:"submitter";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:44:"The banners submitter (null: current member)";s:11:"phpdoc_name";s:9:"submitter";}i:11;a:7:{s:4:"name";s:9:"validated";s:7:"default";i:1;s:11:"default_raw";s:1:"1";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:37:"Whether the banner has been validated";s:11:"phpdoc_name";s:9:"validated";}i:12;a:7:{s:4:"name";s:6:"b_type";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:61:"The banner type (can be anything, where blank means 'normal')";s:11:"phpdoc_name";s:6:"b_type";}i:13;a:7:{s:4:"name";s:7:"b_types";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:83:"The secondary banner types (empty: no secondary banner types) (null: same as empty)";s:11:"phpdoc_name";s:7:"b_types";}i:14;a:7:{s:4:"name";s:7:"regions";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:61:"The regions (empty: not region-limited) (null: same as empty)";s:11:"phpdoc_name";s:7:"regions";}i:15;a:7:{s:4:"name";s:10:"title_text";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:130:"The title text for the banner (only used for text banners, and functions as the 'trigger text' if the banner type is shown inline)";s:11:"phpdoc_name";s:10:"title_text";}}s:4:"name";s:15:"get_form_fields";s:11:"description";s:123:"Get the Tempcode for the form to add a banner, with the information passed along to it via the parameters already added in.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:4:"Bits";}}s:13:"get_submitter";a:6:{s:8:"filename";s:33:"cms/pages/modules/cms_banners.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:43:"The entry for which the submitter is sought";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:13:"get_submitter";s:11:"description";s:38:"Standard crud_module submitter getter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:97:"The submitter, and the time of submission (null submission time implies no known submission time)";}}s:17:"fill_in_edit_form";a:6:{s:8:"filename";s:33:"cms/pages/modules/cms_banners.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:17:"fill_in_edit_form";s:11:"description";s:38:"Standard crud_module edit form filler.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:4:"Bits";}}s:17:"add_actualisation";a:6:{s:8:"filename";s:33:"cms/pages/modules/cms_banners.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"add_actualisation";s:11:"description";s:36:"Standard crud_module add actualiser.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:48:"A pair: The entry added, Description about usage";}}s:18:"edit_actualisation";a:5:{s:8:"filename";s:33:"cms/pages/modules/cms_banners.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:18:"edit_actualisation";s:11:"description";s:37:"Standard crud_module edit actualiser.";s:5:"flags";a:0:{}}s:20:"delete_actualisation";a:5:{s:8:"filename";s:33:"cms/pages/modules/cms_banners.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"The entry being deleted";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:20:"delete_actualisation";s:11:"description";s:39:"Standard crud_module delete actualiser.";s:5:"flags";a:0:{}}s:15:"do_next_manager";a:6:{s:8:"filename";s:33:"cms/pages/modules/cms_banners.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:38:"The title (output of get_screen_title)";s:11:"phpdoc_name";s:5:"title";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:46:"Some description to show, saying what happened";s:11:"phpdoc_name";s:11:"description";}i:2;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:47:"The ID of whatever was just handled (null: N/A)";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:15:"do_next_manager";s:11:"description";s:71:"The do-next manager for after banner content management (banners only).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:10:"export_csv";a:6:{s:8:"filename";s:33:"cms/pages/modules/cms_banners.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"export_csv";s:11:"description";s:39:"The actualiser to export a banners CSV.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:18:"Module_cms_banners";s:7:"comment";b:1;}s:22:"Module_cms_banners_cat";a:3:{s:9:"functions";a:8:{s:34:"create_selection_list_choose_table";a:6:{s:8:"filename";s:33:"cms/pages/modules/cms_banners.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"url_map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:55:"Details to go to build_url for link to the next screen.";s:11:"phpdoc_name";s:7:"url_map";}}s:4:"name";s:34:"create_selection_list_choose_table";s:11:"description";s:36:"Standard crud_module table function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:76:"A pair: The choose table, Whether re-ordering is supported from this screen.";}}s:15:"get_form_fields";a:6:{s:8:"filename";s:33:"cms/pages/modules/cms_banners.php";s:10:"parameters";a:6:{i:0;a:7:{s:4:"name";s:2:"id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:37:"The ID of the banner type (null: new)";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:10:"is_textual";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:32:"Whether this is a textual banner";s:11:"phpdoc_name";s:10:"is_textual";}i:2;a:7:{s:4:"name";s:11:"image_width";s:7:"default";i:160;s:11:"default_raw";s:3:"160";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:45:"The image width (ignored for textual banners)";s:11:"phpdoc_name";s:11:"image_width";}i:3;a:7:{s:4:"name";s:12:"image_height";s:7:"default";i:600;s:11:"default_raw";s:3:"600";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:46:"The image height (ignored for textual banners)";s:11:"phpdoc_name";s:12:"image_height";}i:4;a:7:{s:4:"name";s:13:"max_file_size";s:7:"default";i:250;s:11:"default_raw";s:3:"250";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:83:"The maximum file size for the banners (this is a string length for textual banners)";s:11:"phpdoc_name";s:13:"max_file_size";}i:5;a:7:{s:4:"name";s:14:"comcode_inline";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:135:"Whether the banner will be automatically shown via Comcode hot-text (this can only happen if banners of the title are given title-text)";s:11:"phpdoc_name";s:14:"comcode_inline";}}s:4:"name";s:15:"get_form_fields";s:11:"description";s:53:"Get Tempcode for a post template adding/editing form.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: the Tempcode for the visible fields, and the Tempcode for the hidden fields";}}s:17:"fill_in_edit_form";a:6:{s:8:"filename";s:33:"cms/pages/modules/cms_banners.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:17:"fill_in_edit_form";s:11:"description";s:38:"Standard crud_module edit form filler.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: the Tempcode for the visible fields, and the Tempcode for the hidden fields";}}s:17:"add_actualisation";a:6:{s:8:"filename";s:33:"cms/pages/modules/cms_banners.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"add_actualisation";s:11:"description";s:36:"Standard crud_module add actualiser.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:48:"A pair: The entry added, description about usage";}}s:18:"edit_actualisation";a:6:{s:8:"filename";s:33:"cms/pages/modules/cms_banners.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:18:"edit_actualisation";s:11:"description";s:37:"Standard crud_module edit actualiser.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:23:"Description about usage";}}s:20:"delete_actualisation";a:5:{s:8:"filename";s:33:"cms/pages/modules/cms_banners.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"The entry being deleted";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:20:"delete_actualisation";s:11:"description";s:39:"Standard crud_module delete actualiser.";s:5:"flags";a:0:{}}s:15:"do_next_manager";a:6:{s:8:"filename";s:33:"cms/pages/modules/cms_banners.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:38:"The title (output of get_screen_title)";s:11:"phpdoc_name";s:5:"title";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:46:"Some description to show, saying what happened";s:11:"phpdoc_name";s:11:"description";}i:2;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:47:"The ID of whatever was just handled (null: N/A)";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:15:"do_next_manager";s:11:"description";s:77:"The do-next manager for after download content management (event types only).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:16:"_do_next_manager";a:6:{s:8:"filename";s:33:"cms/pages/modules/cms_banners.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:38:"The title (output of get_screen_title)";s:11:"phpdoc_name";s:5:"title";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:46:"Some description to show, saying what happened";s:11:"phpdoc_name";s:11:"description";}i:2;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:47:"The ID of whatever was just handled (null: N/A)";s:11:"phpdoc_name";s:2:"id";}i:3;a:5:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:30:"The type ID we were working in";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:16:"_do_next_manager";s:11:"description";s:56:"The do-next manager for after banner content management.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:22:"Module_cms_banners_cat";s:7:"comment";b:1;}s:16:"Module_cms_blogs";a:3:{s:9:"functions";a:16:{s:16:"get_entry_points";a:6:{s:8:"filename";s:31:"cms/pages/modules/cms_blogs.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:31:"cms/pages/modules/cms_blogs.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:9:"top_level";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:77:"Whether this is running at the top level, prior to having sub-objects called.";s:11:"phpdoc_name";s:9:"top_level";}i:1;a:7:{s:4:"name";s:4:"type";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:80:"The screen type to consider for metadata purposes (null: read from environment).";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:9:"run_start";a:6:{s:8:"filename";s:31:"cms/pages/modules/cms_blogs.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:28:"The type of module execution";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:9:"run_start";s:11:"description";s:31:"Standard crud_module run_start.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:21:"The output of the run";}}s:6:"browse";a:6:{s:8:"filename";s:31:"cms/pages/modules/cms_blogs.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"browse";s:11:"description";s:50:"The do-next manager for before content management.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:34:"create_selection_list_choose_table";a:6:{s:8:"filename";s:31:"cms/pages/modules/cms_blogs.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"url_map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:55:"Details to go to build_url for link to the next screen.";s:11:"phpdoc_name";s:7:"url_map";}}s:4:"name";s:34:"create_selection_list_choose_table";s:11:"description";s:36:"Standard crud_module table function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:130:"A quartet: The choose table, Whether re-ordering is supported from this screen, Search URL, Archive URL (null: nothing to select).";}}s:29:"create_selection_list_entries";a:6:{s:8:"filename";s:31:"cms/pages/modules/cms_blogs.php";s:10:"parameters";a:0:{}s:4:"name";s:29:"create_selection_list_entries";s:11:"description";s:35:"Standard crud_module list function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:18:"The selection list";}}s:15:"get_form_fields";a:6:{s:8:"filename";s:31:"cms/pages/modules/cms_blogs.php";s:10:"parameters";a:14:{i:0;a:7:{s:4:"name";s:2:"id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:23:"The news ID (null: new)";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:18:"main_news_category";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:50:"The primary category for the news (null: personal)";s:11:"phpdoc_name";s:18:"main_news_category";}i:2;a:7:{s:4:"name";s:13:"news_category";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:53:"A list of categories the news is in (null: not known)";s:11:"phpdoc_name";s:13:"news_category";}i:3;a:7:{s:4:"name";s:5:"title";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:14:"The news title";s:11:"phpdoc_name";s:5:"title";}i:4;a:7:{s:4:"name";s:4:"news";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:16:"The news summary";s:11:"phpdoc_name";s:4:"news";}i:5;a:7:{s:4:"name";s:6:"author";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:22:"The name of the author";s:11:"phpdoc_name";s:6:"author";}i:6;a:7:{s:4:"name";s:9:"validated";s:7:"default";i:1;s:11:"default_raw";s:1:"1";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:29:"Whether the news is validated";s:11:"phpdoc_name";s:9:"validated";}i:7;a:7:{s:4:"name";s:12:"allow_rating";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:81:"Whether rating is allowed (null: decide statistically, based on existing choices)";s:11:"phpdoc_name";s:12:"allow_rating";}i:8;a:7:{s:4:"name";s:14:"allow_comments";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:14:"?SHORT_INTEGER";s:11:"description";s:114:"Whether comments are allowed (0=no, 1=yes, 2=review style) (null: decide statistically, based on existing choices)";s:11:"phpdoc_name";s:14:"allow_comments";}i:9;a:7:{s:4:"name";s:16:"allow_trackbacks";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:86:"Whether trackbacks are allowed (null: decide statistically, based on existing choices)";s:11:"phpdoc_name";s:16:"allow_trackbacks";}i:10;a:7:{s:4:"name";s:15:"send_trackbacks";s:7:"default";i:1;s:11:"default_raw";s:1:"1";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:42:"Whether to show the "send trackback" field";s:11:"phpdoc_name";s:15:"send_trackbacks";}i:11;a:7:{s:4:"name";s:5:"notes";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:19:"Notes for the video";s:11:"phpdoc_name";s:5:"notes";}i:12;a:7:{s:4:"name";s:5:"image";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:58:"URL to the image for the news entry (blank: use cat image)";s:11:"phpdoc_name";s:5:"image";}i:13;a:7:{s:4:"name";s:9:"scheduled";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:34:"Scheduled go-live time (null: N/A)";s:11:"phpdoc_name";s:9:"scheduled";}}s:4:"name";s:15:"get_form_fields";s:11:"description";s:44:"Get Tempcode for a news adding/editing form.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:64:"A tuple of lots of info (fields, hidden fields, trailing fields)";}}s:13:"get_submitter";a:6:{s:8:"filename";s:31:"cms/pages/modules/cms_blogs.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:43:"The entry for which the submitter is sought";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:13:"get_submitter";s:11:"description";s:38:"Standard crud_module submitter getter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:97:"The submitter, and the time of submission (null submission time implies no known submission time)";}}s:7:"get_cat";a:6:{s:8:"filename";s:31:"cms/pages/modules/cms_blogs.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:37:"The entry for which the cat is sought";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:7:"get_cat";s:11:"description";s:32:"Standard crud_module cat getter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:7:"The cat";}}s:17:"fill_in_edit_form";a:6:{s:8:"filename";s:31:"cms/pages/modules/cms_blogs.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:3:"_id";}}s:4:"name";s:17:"fill_in_edit_form";s:11:"description";s:38:"Standard crud_module edit form filler.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"A tuple of lots of info";}}s:17:"add_actualisation";a:6:{s:8:"filename";s:31:"cms/pages/modules/cms_blogs.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"add_actualisation";s:11:"description";s:36:"Standard crud_module add actualiser.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:25:"The ID of the entry added";}}s:18:"edit_actualisation";a:5:{s:8:"filename";s:31:"cms/pages/modules/cms_blogs.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:3:"_id";}}s:4:"name";s:18:"edit_actualisation";s:11:"description";s:37:"Standard crud_module edit actualiser.";s:5:"flags";a:0:{}}s:20:"delete_actualisation";a:5:{s:8:"filename";s:31:"cms/pages/modules/cms_blogs.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"The entry being deleted";s:11:"phpdoc_name";s:3:"_id";}}s:4:"name";s:20:"delete_actualisation";s:11:"description";s:39:"Standard crud_module delete actualiser.";s:5:"flags";a:0:{}}s:15:"do_next_manager";a:6:{s:8:"filename";s:31:"cms/pages/modules/cms_blogs.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:38:"The title (output of get_screen_title)";s:11:"phpdoc_name";s:5:"title";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:46:"Some description to show, saying what happened";s:11:"phpdoc_name";s:11:"description";}i:2;a:7:{s:4:"name";s:2:"id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:47:"The ID of whatever was just handled (null: N/A)";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:15:"do_next_manager";s:11:"description";s:54:"The do-next manager for after news content management.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:16:"import_wordpress";a:6:{s:8:"filename";s:31:"cms/pages/modules/cms_blogs.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"import_wordpress";s:11:"description";s:21:"The UI to import news";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:17:"_import_wordpress";a:6:{s:8:"filename";s:31:"cms/pages/modules/cms_blogs.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"_import_wordpress";s:11:"description";s:41:"The actualiser to import a wordpress blog";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:16:"Module_cms_blogs";s:7:"comment";b:1;}s:19:"Module_cms_calendar";a:3:{s:9:"functions";a:20:{s:16:"get_entry_points";a:6:{s:8:"filename";s:34:"cms/pages/modules/cms_calendar.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:23:"get_privilege_overrides";a:6:{s:8:"filename";s:34:"cms/pages/modules/cms_calendar.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"get_privilege_overrides";s:11:"description";s:54:"Find privileges defined as overridable by this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:130:"A map of privileges that are overridable; privilege to 0 or 1. 0 means "not category overridable". 1 means "category overridable".";}}s:7:"pre_run";a:6:{s:8:"filename";s:34:"cms/pages/modules/cms_calendar.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:9:"top_level";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:77:"Whether this is running at the top level, prior to having sub-objects called.";s:11:"phpdoc_name";s:9:"top_level";}i:1;a:7:{s:4:"name";s:4:"type";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:80:"The screen type to consider for metadata purposes (null: read from environment).";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:9:"run_start";a:6:{s:8:"filename";s:34:"cms/pages/modules/cms_calendar.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:28:"The type of module execution";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:9:"run_start";s:11:"description";s:31:"Standard crud_module run_start.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:21:"The output of the run";}}s:6:"browse";a:6:{s:8:"filename";s:34:"cms/pages/modules/cms_calendar.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"browse";s:11:"description";s:50:"The do-next manager for before content management.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:34:"create_selection_list_choose_table";a:6:{s:8:"filename";s:34:"cms/pages/modules/cms_calendar.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"url_map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:55:"Details to go to build_url for link to the next screen.";s:11:"phpdoc_name";s:7:"url_map";}}s:4:"name";s:34:"create_selection_list_choose_table";s:11:"description";s:36:"Standard crud_module table function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:104:"A quartet: The choose table, Whether re-ordering is supported from this screen, Search URL, Archive URL.";}}s:29:"create_selection_list_entries";a:6:{s:8:"filename";s:34:"cms/pages/modules/cms_calendar.php";s:10:"parameters";a:0:{}s:4:"name";s:29:"create_selection_list_entries";s:11:"description";s:35:"Standard crud_module list function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:18:"The selection list";}}s:15:"get_form_fields";a:6:{s:8:"filename";s:34:"cms/pages/modules/cms_calendar.php";s:10:"parameters";a:29:{i:0;a:7:{s:4:"name";s:2:"id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:24:"The event ID (null: new)";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:4:"type";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:30:"The event type (null: default)";s:11:"phpdoc_name";s:4:"type";}i:2;a:7:{s:4:"name";s:10:"start_year";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:44:"The year the event starts at (null: default)";s:11:"phpdoc_name";s:10:"start_year";}i:3;a:7:{s:4:"name";s:11:"start_month";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:45:"The month the event starts at (null: default)";s:11:"phpdoc_name";s:11:"start_month";}i:4;a:7:{s:4:"name";s:9:"start_day";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:43:"The day the event starts at (null: default)";s:11:"phpdoc_name";s:9:"start_day";}i:5;a:8:{s:4:"name";s:23:"start_monthly_spec_type";s:7:"default";s:12:"day_of_month";s:11:"default_raw";s:14:"'day_of_month'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:42:"In-month specification type for start date";s:11:"phpdoc_name";s:23:"start_monthly_spec_type";s:3:"set";s:71:"day_of_month day_of_month_backwards dow_of_month dow_of_month_backwards";}i:6;a:7:{s:4:"name";s:10:"start_hour";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:44:"The hour the event starts at (null: default)";s:11:"phpdoc_name";s:10:"start_hour";}i:7;a:7:{s:4:"name";s:12:"start_minute";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:46:"The minute the event starts at (null: default)";s:11:"phpdoc_name";s:12:"start_minute";}i:8;a:7:{s:4:"name";s:5:"title";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:22:"The title of the event";s:11:"phpdoc_name";s:5:"title";}i:9;a:7:{s:4:"name";s:7:"content";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:34:"The full text describing the event";s:11:"phpdoc_name";s:7:"content";}i:10;a:7:{s:4:"name";s:10:"recurrence";s:7:"default";s:4:"none";s:11:"default_raw";s:6:"'none'";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:19:"The recurrence code";s:11:"phpdoc_name";s:10:"recurrence";}i:11;a:7:{s:4:"name";s:11:"recurrences";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:47:"The number of recurrences (null: none/infinite)";s:11:"phpdoc_name";s:11:"recurrences";}i:12;a:7:{s:4:"name";s:15:"seg_recurrences";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:72:"Whether to segregate the comment-topics/rating/trackbacks per-recurrence";s:11:"phpdoc_name";s:15:"seg_recurrences";}i:13;a:8:{s:4:"name";s:8:"priority";s:7:"default";i:3;s:11:"default_raw";s:1:"3";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:12:"The priority";s:11:"phpdoc_name";s:8:"priority";s:5:"range";s:3:"1 5";}i:14;a:7:{s:4:"name";s:8:"end_year";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:56:"The year the event ends at (null: not a multi day event)";s:11:"phpdoc_name";s:8:"end_year";}i:15;a:7:{s:4:"name";s:9:"end_month";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:57:"The month the event ends at (null: not a multi day event)";s:11:"phpdoc_name";s:9:"end_month";}i:16;a:7:{s:4:"name";s:7:"end_day";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:55:"The day the event ends at (null: not a multi day event)";s:11:"phpdoc_name";s:7:"end_day";}i:17;a:8:{s:4:"name";s:21:"end_monthly_spec_type";s:7:"default";s:12:"day_of_month";s:11:"default_raw";s:14:"'day_of_month'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:40:"In-month specification type for end date";s:11:"phpdoc_name";s:21:"end_monthly_spec_type";s:3:"set";s:71:"day_of_month day_of_month_backwards dow_of_month dow_of_month_backwards";}i:18;a:7:{s:4:"name";s:8:"end_hour";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:56:"The hour the event ends at (null: not a multi day event)";s:11:"phpdoc_name";s:8:"end_hour";}i:19;a:7:{s:4:"name";s:10:"end_minute";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:58:"The minute the event ends at (null: not a multi day event)";s:11:"phpdoc_name";s:10:"end_minute";}i:20;a:7:{s:4:"name";s:8:"timezone";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:58:"The timezone for the event (null: current user's timezone)";s:11:"phpdoc_name";s:8:"timezone";}i:21;a:7:{s:4:"name";s:16:"do_timezone_conv";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:65:"Whether the time should be presented in the viewer's own timezone";s:11:"phpdoc_name";s:16:"do_timezone_conv";}i:22;a:7:{s:4:"name";s:15:"member_calendar";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:79:"The member's calendar it will be on (null: not on a specific member's calendar)";s:11:"phpdoc_name";s:15:"member_calendar";}i:23;a:7:{s:4:"name";s:9:"validated";s:7:"default";i:1;s:11:"default_raw";s:1:"1";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:30:"Whether the event is validated";s:11:"phpdoc_name";s:9:"validated";}i:24;a:7:{s:4:"name";s:12:"allow_rating";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:81:"Whether rating is allowed (null: decide statistically, based on existing choices)";s:11:"phpdoc_name";s:12:"allow_rating";}i:25;a:7:{s:4:"name";s:14:"allow_comments";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:14:"?SHORT_INTEGER";s:11:"description";s:114:"Whether comments are allowed (0=no, 1=yes, 2=review style) (null: decide statistically, based on existing choices)";s:11:"phpdoc_name";s:14:"allow_comments";}i:26;a:7:{s:4:"name";s:16:"allow_trackbacks";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:86:"Whether trackbacks are allowed (null: decide statistically, based on existing choices)";s:11:"phpdoc_name";s:16:"allow_trackbacks";}i:27;a:7:{s:4:"name";s:5:"notes";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:5:"Notes";s:11:"phpdoc_name";s:5:"notes";}i:28;a:7:{s:4:"name";s:7:"regions";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:61:"The regions (empty: not region-limited) (null: same as empty)";s:11:"phpdoc_name";s:7:"regions";}}s:4:"name";s:15:"get_form_fields";s:11:"description";s:44:"Get the form fields for an event input form.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:134:"A tuple of: (fields, hidden-fields, delete-fields, edit-text, whether all delete fields are specified, posting form text, more fields)";}}s:20:"get_event_parameters";a:6:{s:8:"filename";s:34:"cms/pages/modules/cms_calendar.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"get_event_parameters";s:11:"description";s:51:"Get the form posted parameters specifying an event.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:81:"A list of parameters in a certain order (see the return command to see the order)";}}s:13:"get_submitter";a:6:{s:8:"filename";s:34:"cms/pages/modules/cms_calendar.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:43:"The entry for which the submitter is sought";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:13:"get_submitter";s:11:"description";s:38:"Standard crud_module submitter getter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:97:"The submitter, and the time of submission (null submission time implies no known submission time)";}}s:7:"get_cat";a:6:{s:8:"filename";s:34:"cms/pages/modules/cms_calendar.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:37:"The entry for which the cat is sought";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:7:"get_cat";s:11:"description";s:32:"Standard crud_module cat getter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:7:"The cat";}}s:17:"fill_in_edit_form";a:6:{s:8:"filename";s:34:"cms/pages/modules/cms_calendar.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:17:"fill_in_edit_form";s:11:"description";s:38:"Standard crud_module edit form filler.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:164:"A tuple of: (fields, hidden-fields, delete-fields, edit-text, whether all delete fields are specified, posting form text, more fields, parsed WYSIWYG editable text)";}}s:17:"add_actualisation";a:6:{s:8:"filename";s:34:"cms/pages/modules/cms_calendar.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"add_actualisation";s:11:"description";s:36:"Standard crud_module add actualiser.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:42:"A pair: the entry added, and a description";}}s:18:"edit_actualisation";a:6:{s:8:"filename";s:34:"cms/pages/modules/cms_calendar.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:3:"_id";}}s:4:"name";s:18:"edit_actualisation";s:11:"description";s:37:"Standard crud_module edit actualiser.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:31:"Description shown after editing";}}s:20:"delete_actualisation";a:5:{s:8:"filename";s:34:"cms/pages/modules/cms_calendar.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"The entry being deleted";s:11:"phpdoc_name";s:3:"_id";}}s:4:"name";s:20:"delete_actualisation";s:11:"description";s:39:"Standard crud_module delete actualiser.";s:5:"flags";a:0:{}}s:15:"do_next_manager";a:6:{s:8:"filename";s:34:"cms/pages/modules/cms_calendar.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:38:"The title (output of get_screen_title)";s:11:"phpdoc_name";s:5:"title";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:46:"Some description to show, saying what happened";s:11:"phpdoc_name";s:11:"description";}i:2;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:47:"The ID of whatever was just handled (null: N/A)";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:15:"do_next_manager";s:11:"description";s:72:"The do-next manager for after calendar content management (events only).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:11:"import_ical";a:6:{s:8:"filename";s:34:"cms/pages/modules/cms_calendar.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"import_ical";s:11:"description";s:34:"The UI to import ical for calendar";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:12:"_import_ical";a:6:{s:8:"filename";s:34:"cms/pages/modules/cms_calendar.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"_import_ical";s:11:"description";s:42:"The actualiser to import ical for calendar";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:11:"export_ical";a:6:{s:8:"filename";s:34:"cms/pages/modules/cms_calendar.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"export_ical";s:11:"description";s:34:"UI to display export screen fields";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:12:"_export_ical";a:5:{s:8:"filename";s:34:"cms/pages/modules/cms_calendar.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"_export_ical";s:11:"description";s:29:"The actualiser to export ical";s:5:"flags";a:0:{}}}s:4:"name";s:19:"Module_cms_calendar";s:7:"comment";b:1;}s:23:"Module_cms_calendar_cat";a:3:{s:9:"functions";a:8:{s:15:"get_form_fields";a:6:{s:8:"filename";s:34:"cms/pages/modules/cms_calendar.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:2:"id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:35:"ID of category (null: new category)";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:5:"title";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:9:"The title";s:11:"phpdoc_name";s:5:"title";}i:2;a:7:{s:4:"name";s:4:"logo";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:20:"The theme image code";s:11:"phpdoc_name";s:4:"logo";}i:3;a:7:{s:4:"name";s:13:"external_feed";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:54:"URL to external feed to associate with this event type";s:11:"phpdoc_name";s:13:"external_feed";}}s:4:"name";s:15:"get_form_fields";s:11:"description";s:53:"Get Tempcode for a post template adding/editing form.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:39:"A pair: The input fields, Hidden fields";}}s:34:"create_selection_list_choose_table";a:6:{s:8:"filename";s:34:"cms/pages/modules/cms_calendar.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"url_map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:55:"Details to go to build_url for link to the next screen.";s:11:"phpdoc_name";s:7:"url_map";}}s:4:"name";s:34:"create_selection_list_choose_table";s:11:"description";s:36:"Standard crud_module table function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:104:"A quartet: The choose table, Whether re-ordering is supported from this screen, Search URL, Archive URL.";}}s:17:"fill_in_edit_form";a:6:{s:8:"filename";s:34:"cms/pages/modules/cms_calendar.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:17:"fill_in_edit_form";s:11:"description";s:38:"Standard crud_module edit form filler.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:39:"A pair: The input fields, Hidden fields";}}s:17:"add_actualisation";a:6:{s:8:"filename";s:34:"cms/pages/modules/cms_calendar.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"add_actualisation";s:11:"description";s:36:"Standard crud_module add actualiser.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The entry added";}}s:18:"edit_actualisation";a:5:{s:8:"filename";s:34:"cms/pages/modules/cms_calendar.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:18:"edit_actualisation";s:11:"description";s:37:"Standard crud_module edit actualiser.";s:5:"flags";a:0:{}}s:20:"delete_actualisation";a:5:{s:8:"filename";s:34:"cms/pages/modules/cms_calendar.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"The entry being deleted";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:20:"delete_actualisation";s:11:"description";s:39:"Standard crud_module delete actualiser.";s:5:"flags";a:0:{}}s:15:"do_next_manager";a:6:{s:8:"filename";s:34:"cms/pages/modules/cms_calendar.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:38:"The title (output of get_screen_title)";s:11:"phpdoc_name";s:5:"title";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:46:"Some description to show, saying what happened";s:11:"phpdoc_name";s:11:"description";}i:2;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:47:"The ID of whatever was just handled (null: N/A)";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:15:"do_next_manager";s:11:"description";s:77:"The do-next manager for after calendar content management (event types only).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:16:"_do_next_manager";a:6:{s:8:"filename";s:34:"cms/pages/modules/cms_calendar.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:38:"The title (output of get_screen_title)";s:11:"phpdoc_name";s:5:"title";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:46:"Some description to show, saying what happened";s:11:"phpdoc_name";s:11:"description";}i:2;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:47:"The ID of whatever was just handled (null: N/A)";s:11:"phpdoc_name";s:2:"id";}i:3;a:5:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:46:"The category ID we were working in (null: N/A)";s:11:"phpdoc_name";s:4:"type";}i:4;a:5:{s:4:"name";s:4:"date";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:71:"The Y-m-d of the added/edited event (first occurence) (blank: whatever)";s:11:"phpdoc_name";s:4:"date";}}s:4:"name";s:16:"_do_next_manager";s:11:"description";s:58:"The do-next manager for after calendar content management.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:23:"Module_cms_calendar_cat";s:7:"comment";b:1;}s:21:"Module_cms_catalogues";a:3:{s:9:"functions";a:22:{s:16:"get_entry_points";a:6:{s:8:"filename";s:36:"cms/pages/modules/cms_catalogues.php";s:10:"parameters";a:5:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}i:4;a:7:{s:4:"name";s:10:"simplified";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:100:"Whether to simplify this down for only a specific catalogue (only applied to cms_catalogues module).";s:11:"phpdoc_name";s:10:"simplified";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:23:"get_privilege_overrides";a:6:{s:8:"filename";s:36:"cms/pages/modules/cms_catalogues.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"get_privilege_overrides";s:11:"description";s:54:"Find privileges defined as overridable by this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:130:"A map of privileges that are overridable; privilege to 0 or 1. 0 means "not category overridable". 1 means "category overridable".";}}s:7:"pre_run";a:6:{s:8:"filename";s:36:"cms/pages/modules/cms_catalogues.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:9:"top_level";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:77:"Whether this is running at the top level, prior to having sub-objects called.";s:11:"phpdoc_name";s:9:"top_level";}i:1;a:7:{s:4:"name";s:4:"type";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:80:"The screen type to consider for metadata purposes (null: read from environment).";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:9:"run_start";a:6:{s:8:"filename";s:36:"cms/pages/modules/cms_catalogues.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:28:"The type of module execution";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:9:"run_start";s:11:"description";s:31:"Standard crud_module run_start.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:21:"The output of the run";}}s:6:"browse";a:6:{s:8:"filename";s:36:"cms/pages/modules/cms_catalogues.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"browse";s:11:"description";s:50:"The do-next manager for before content management.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:34:"create_selection_list_choose_table";a:6:{s:8:"filename";s:36:"cms/pages/modules/cms_catalogues.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"url_map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:55:"Details to go to build_url for link to the next screen.";s:11:"phpdoc_name";s:7:"url_map";}}s:4:"name";s:34:"create_selection_list_choose_table";s:11:"description";s:36:"Standard crud_module table function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:104:"A quartet: The choose table, Whether re-ordering is supported from this screen, Search URL, Archive URL.";}}s:31:"create_selection_list_ajax_tree";a:6:{s:8:"filename";s:36:"cms/pages/modules/cms_catalogues.php";s:10:"parameters";a:0:{}s:4:"name";s:31:"create_selection_list_ajax_tree";s:11:"description";s:35:"Standard crud_module list function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:81:"A triple: The tree field (Tempcode), Search URL, Archive URL (null: nothing here)";}}s:15:"get_form_fields";a:6:{s:8:"filename";s:36:"cms/pages/modules/cms_catalogues.php";s:10:"parameters";a:8:{i:0;a:7:{s:4:"name";s:14:"catalogue_name";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:42:"The catalogue for the entry (null: detect)";s:11:"phpdoc_name";s:14:"catalogue_name";}i:1;a:7:{s:4:"name";s:11:"category_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:40:"The category for the entry (null: first)";s:11:"phpdoc_name";s:11:"category_id";}i:2;a:7:{s:4:"name";s:9:"validated";s:7:"default";i:1;s:11:"default_raw";s:1:"1";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:30:"Whether the entry is validated";s:11:"phpdoc_name";s:9:"validated";}i:3;a:7:{s:4:"name";s:5:"notes";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:11:"Staff notes";s:11:"phpdoc_name";s:5:"notes";}i:4;a:7:{s:4:"name";s:12:"allow_rating";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:81:"Whether rating is allowed (null: decide statistically, based on existing choices)";s:11:"phpdoc_name";s:12:"allow_rating";}i:5;a:7:{s:4:"name";s:14:"allow_comments";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:14:"?SHORT_INTEGER";s:11:"description";s:114:"Whether comments are allowed (0=no, 1=yes, 2=review style) (null: decide statistically, based on existing choices)";s:11:"phpdoc_name";s:14:"allow_comments";}i:6;a:7:{s:4:"name";s:16:"allow_trackbacks";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:86:"Whether trackbacks are allowed (null: decide statistically, based on existing choices)";s:11:"phpdoc_name";s:16:"allow_trackbacks";}i:7;a:7:{s:4:"name";s:2:"id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:41:"The ID of the entry (null: not yet added)";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:15:"get_form_fields";s:11:"description";s:55:"Get Tempcode for a catalogue entry adding/editing form.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:113:"Tuple: the Tempcode for the visible fields, and the Tempcode for the hidden fields, ..., extra templating details";}}s:13:"get_submitter";a:6:{s:8:"filename";s:36:"cms/pages/modules/cms_catalogues.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:43:"The entry for which the submitter is sought";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:13:"get_submitter";s:11:"description";s:38:"Standard crud_module submitter getter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:97:"The submitter, and the time of submission (null submission time implies no known submission time)";}}s:9:"get_cat_b";a:6:{s:8:"filename";s:36:"cms/pages/modules/cms_catalogues.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:37:"The entry for which the cat is sought";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:9:"get_cat_b";s:11:"description";s:32:"Standard crud_module cat getter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:7:"The cat";}}s:7:"get_cat";a:6:{s:8:"filename";s:36:"cms/pages/modules/cms_catalogues.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:37:"The entry for which the cat is sought";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:7:"get_cat";s:11:"description";s:32:"Standard crud_module cat getter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:7:"The cat";}}s:17:"fill_in_edit_form";a:6:{s:8:"filename";s:36:"cms/pages/modules/cms_catalogues.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:3:"_id";}}s:4:"name";s:17:"fill_in_edit_form";s:11:"description";s:38:"Standard crud_module edit form filler.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"A tuple of lots of info";}}s:17:"get_set_field_map";a:6:{s:8:"filename";s:36:"cms/pages/modules/cms_catalogues.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:14:"catalogue_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:39:"The name of the catalogue that was used";s:11:"phpdoc_name";s:14:"catalogue_name";}i:1;a:5:{s:4:"name";s:9:"submitter";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:19:"The entry submitter";s:11:"phpdoc_name";s:9:"submitter";}i:2;a:7:{s:4:"name";s:10:"editing_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:49:"ID of entry being edited (null: not being edited)";s:11:"phpdoc_name";s:10:"editing_id";}}s:4:"name";s:17:"get_set_field_map";s:11:"description";s:74:"Get a entry-id=>value map of what a submitted catalogue entry form has set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:7:"The map";}}s:17:"add_actualisation";a:6:{s:8:"filename";s:36:"cms/pages/modules/cms_catalogues.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"add_actualisation";s:11:"description";s:36:"Standard crud_module add actualiser.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:25:"The ID of the entry added";}}s:18:"edit_actualisation";a:5:{s:8:"filename";s:36:"cms/pages/modules/cms_catalogues.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:3:"_id";}}s:4:"name";s:18:"edit_actualisation";s:11:"description";s:37:"Standard crud_module edit actualiser.";s:5:"flags";a:0:{}}s:20:"delete_actualisation";a:5:{s:8:"filename";s:36:"cms/pages/modules/cms_catalogues.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"The entry being deleted";s:11:"phpdoc_name";s:3:"_id";}}s:4:"name";s:20:"delete_actualisation";s:11:"description";s:39:"Standard crud_module delete actualiser.";s:5:"flags";a:0:{}}s:15:"may_delete_this";a:6:{s:8:"filename";s:36:"cms/pages/modules/cms_catalogues.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:35:"The entry being potentially deleted";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:15:"may_delete_this";s:11:"description";s:48:"Standard crud_module delete possibility checker.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:25:"Whether it may be deleted";}}s:15:"do_next_manager";a:6:{s:8:"filename";s:36:"cms/pages/modules/cms_catalogues.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:38:"The title (output of get_screen_title)";s:11:"phpdoc_name";s:5:"title";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:46:"Some description to show, saying what happened";s:11:"phpdoc_name";s:11:"description";}i:2;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:47:"The ID of whatever was just handled (null: N/A)";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:15:"do_next_manager";s:11:"description";s:49:"The do-next manager for after content management.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:16:"import_catalogue";a:6:{s:8:"filename";s:36:"cms/pages/modules/cms_catalogues.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"import_catalogue";s:11:"description";s:56:"The UI to choose a catalogue to import catalogue entries";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:17:"_import_catalogue";a:6:{s:8:"filename";s:36:"cms/pages/modules/cms_catalogues.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"_import_catalogue";s:11:"description";s:47:"Standard actualiser to import catalogue entries";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:16:"export_catalogue";a:6:{s:8:"filename";s:36:"cms/pages/modules/cms_catalogues.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"export_catalogue";s:11:"description";s:56:"The UI to choose a catalogue to export catalogue entries";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:17:"_export_catalogue";a:6:{s:8:"filename";s:36:"cms/pages/modules/cms_catalogues.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:14:"catalogue_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:25:"The name of the catalogue";s:11:"phpdoc_name";s:14:"catalogue_name";}}s:4:"name";s:17:"_export_catalogue";s:11:"description";s:47:"The actualiser to download a CSV of catalogues.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:21:"Module_cms_catalogues";s:7:"comment";b:1;}s:25:"Module_cms_catalogues_cat";a:3:{s:9:"functions";a:10:{s:34:"create_selection_list_choose_table";a:6:{s:8:"filename";s:36:"cms/pages/modules/cms_catalogues.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"url_map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:55:"Details to go to build_url for link to the next screen.";s:11:"phpdoc_name";s:7:"url_map";}}s:4:"name";s:34:"create_selection_list_choose_table";s:11:"description";s:36:"Standard crud_module table function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:104:"A quartet: The choose table, Whether re-ordering is supported from this screen, Search URL, Archive URL.";}}s:31:"create_selection_list_ajax_tree";a:6:{s:8:"filename";s:36:"cms/pages/modules/cms_catalogues.php";s:10:"parameters";a:0:{}s:4:"name";s:31:"create_selection_list_ajax_tree";s:11:"description";s:35:"Standard crud_module list function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:81:"A triple: The tree field (Tempcode), Search URL, Archive URL (null: nothing here)";}}s:15:"get_form_fields";a:6:{s:8:"filename";s:36:"cms/pages/modules/cms_catalogues.php";s:10:"parameters";a:11:{i:0;a:7:{s:4:"name";s:14:"catalogue_name";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:59:"The name of the catalogue the category is in (null: detect)";s:11:"phpdoc_name";s:14:"catalogue_name";}i:1;a:7:{s:4:"name";s:5:"title";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:25:"The title of the category";s:11:"phpdoc_name";s:5:"title";}i:2;a:7:{s:4:"name";s:11:"description";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:28:"Description for the category";s:11:"phpdoc_name";s:11:"description";}i:3;a:7:{s:4:"name";s:5:"notes";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:11:"Admin notes";s:11:"phpdoc_name";s:5:"notes";}i:4;a:7:{s:4:"name";s:9:"parent_id";s:7:"default";i:-1;s:11:"default_raw";s:2:"-1";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:71:"The ID of the parent category (null: no parent) (-1: arbitrary default)";s:11:"phpdoc_name";s:9:"parent_id";}i:5;a:7:{s:4:"name";s:2:"id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:57:"The ID of this category (null: we're adding, not editing)";s:11:"phpdoc_name";s:2:"id";}i:6;a:7:{s:4:"name";s:9:"rep_image";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:40:"The rep-image for the catalogue category";s:11:"phpdoc_name";s:9:"rep_image";}i:7;a:7:{s:4:"name";s:15:"move_days_lower";s:7:"default";i:30;s:11:"default_raw";s:2:"30";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:46:"The number of days before expiry (lower limit)";s:11:"phpdoc_name";s:15:"move_days_lower";}i:8;a:7:{s:4:"name";s:16:"move_days_higher";s:7:"default";i:60;s:11:"default_raw";s:2:"60";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:47:"The number of days before expiry (higher limit)";s:11:"phpdoc_name";s:16:"move_days_higher";}i:9;a:7:{s:4:"name";s:11:"move_target";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:41:"The expiry category (null: do not expire)";s:11:"phpdoc_name";s:11:"move_target";}i:10;a:7:{s:4:"name";s:5:"order";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:50:"The order (null: auto-calculate, for new category)";s:11:"phpdoc_name";s:5:"order";}}s:4:"name";s:15:"get_form_fields";s:11:"description";s:58:"Get Tempcode for a catalogue category adding/editing form.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: the Tempcode for the visible fields, and the Tempcode for the hidden fields";}}s:7:"get_cat";a:6:{s:8:"filename";s:36:"cms/pages/modules/cms_catalogues.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:7:"get_cat";s:11:"description";s:32:"Standard crud_module cat getter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:7:"The cat";}}s:17:"fill_in_edit_form";a:6:{s:8:"filename";s:36:"cms/pages/modules/cms_catalogues.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:3:"_id";}}s:4:"name";s:17:"fill_in_edit_form";s:11:"description";s:38:"Standard crud_module edit form filler.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"A tuple of lots of info";}}s:15:"may_delete_this";a:6:{s:8:"filename";s:36:"cms/pages/modules/cms_catalogues.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:35:"The entry being potentially deleted";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:15:"may_delete_this";s:11:"description";s:48:"Standard crud_module delete possibility checker.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:25:"Whether it may be deleted";}}s:17:"add_actualisation";a:6:{s:8:"filename";s:36:"cms/pages/modules/cms_catalogues.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"add_actualisation";s:11:"description";s:36:"Standard crud_module add actualiser.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:24:"The ID of what was added";}}s:18:"edit_actualisation";a:5:{s:8:"filename";s:36:"cms/pages/modules/cms_catalogues.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:3:"_id";}}s:4:"name";s:18:"edit_actualisation";s:11:"description";s:37:"Standard crud_module edit actualiser.";s:5:"flags";a:0:{}}s:20:"delete_actualisation";a:5:{s:8:"filename";s:36:"cms/pages/modules/cms_catalogues.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"The entry being deleted";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:20:"delete_actualisation";s:11:"description";s:39:"Standard crud_module delete actualiser.";s:5:"flags";a:0:{}}s:15:"do_next_manager";a:6:{s:8:"filename";s:36:"cms/pages/modules/cms_catalogues.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:38:"The title (output of get_screen_title)";s:11:"phpdoc_name";s:5:"title";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:46:"Some description to show, saying what happened";s:11:"phpdoc_name";s:11:"description";}i:2;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:70:"The ID of whatever catalogue category was just handled (null: deleted)";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:15:"do_next_manager";s:11:"description";s:59:"The do-next manager for after catalogue content management.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:25:"Module_cms_catalogues_cat";s:7:"comment";b:1;}s:25:"Module_cms_catalogues_alt";a:3:{s:9:"functions";a:10:{s:29:"create_selection_list_entries";a:6:{s:8:"filename";s:36:"cms/pages/modules/cms_catalogues.php";s:10:"parameters";a:0:{}s:4:"name";s:29:"create_selection_list_entries";s:11:"description";s:35:"Standard crud_module list function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:18:"The selection list";}}s:15:"may_delete_this";a:6:{s:8:"filename";s:36:"cms/pages/modules/cms_catalogues.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:35:"The entry being potentially deleted";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:15:"may_delete_this";s:11:"description";s:47:"Standard aed_module delete possibility checker.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:25:"Whether it may be deleted";}}s:20:"tied_to_content_type";a:6:{s:8:"filename";s:36:"cms/pages/modules/cms_catalogues.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:30:"The catalogue name (null: n/a)";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:20:"tied_to_content_type";s:11:"description";s:35:"Find what content type this is for.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:29:"The content type (null: none)";}}s:15:"get_form_fields";a:6:{s:8:"filename";s:36:"cms/pages/modules/cms_catalogues.php";s:10:"parameters";a:10:{i:0;a:7:{s:4:"name";s:4:"name";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:25:"The name of the catalogue";s:11:"phpdoc_name";s:4:"name";}i:1;a:7:{s:4:"name";s:5:"title";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:46:"The human readable name/title of the catalogue";s:11:"phpdoc_name";s:5:"title";}i:2;a:7:{s:4:"name";s:11:"description";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:15:"The description";s:11:"phpdoc_name";s:11:"description";}i:3;a:7:{s:4:"name";s:12:"display_type";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:13:"SHORT_INTEGER";s:11:"description";s:16:"The display type";s:11:"phpdoc_name";s:12:"display_type";}i:4;a:7:{s:4:"name";s:7:"is_tree";s:7:"default";i:1;s:11:"default_raw";s:1:"1";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:38:"Whether the catalogue uses a hierarchy";s:11:"phpdoc_name";s:7:"is_tree";}i:5;a:7:{s:4:"name";s:5:"notes";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:11:"Admin notes";s:11:"phpdoc_name";s:5:"notes";}i:6;a:7:{s:4:"name";s:13:"submit_points";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:67:"How many points are given to a member that submits to the catalogue";s:11:"phpdoc_name";s:13:"submit_points";}i:7;a:7:{s:4:"name";s:9:"ecommerce";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:47:"Whether the catalogue is an eCommerce catalogue";s:11:"phpdoc_name";s:9:"ecommerce";}i:8;a:8:{s:4:"name";s:17:"send_view_reports";s:7:"default";s:5:"never";s:11:"default_raw";s:7:"'never'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:24:"How to send view reports";s:11:"phpdoc_name";s:17:"send_view_reports";s:3:"set";s:36:"never daily weekly monthly quarterly";}i:9;a:7:{s:4:"name";s:19:"default_review_freq";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:59:"Default review frequency for catalogue entries (null: none)";s:11:"phpdoc_name";s:19:"default_review_freq";}}s:4:"name";s:15:"get_form_fields";s:11:"description";s:49:"Get Tempcode for a catalogue adding/editing form.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:108:"A tuple: the Tempcode for the visible fields, and the Tempcode for the hidden fields, ..., and action fields";}}s:16:"get_field_fields";a:6:{s:8:"filename";s:36:"cms/pages/modules/cms_catalogues.php";s:10:"parameters";a:15:{i:0;a:5:{s:4:"name";s:11:"first_field";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:51:"Whether this is the first field of the entry fields";s:11:"phpdoc_name";s:11:"first_field";}i:1;a:5:{s:4:"name";s:18:"num_fields_to_show";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:47:"The number of fields that will be on the screen";s:11:"phpdoc_name";s:18:"num_fields_to_show";}i:2;a:5:{s:4:"name";s:6:"prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:56:"The prefix the field input fields are given (e.g. new1_)";s:11:"phpdoc_name";s:6:"prefix";}i:3;a:5:{s:4:"name";s:5:"order";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:51:"The order of the field relative to the other fields";s:11:"phpdoc_name";s:5:"order";}i:4;a:7:{s:4:"name";s:4:"name";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:21:"The name of the field";s:11:"phpdoc_name";s:4:"name";}i:5;a:7:{s:4:"name";s:11:"description";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:25:"Description for the field";s:11:"phpdoc_name";s:11:"description";}i:6;a:7:{s:4:"name";s:4:"type";s:7:"default";s:10:"short_text";s:11:"default_raw";s:12:"'short_text'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The field type";s:11:"phpdoc_name";s:4:"type";}i:7;a:7:{s:4:"name";s:13:"defines_order";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:40:"Whether the field defines entry ordering";s:11:"phpdoc_name";s:13:"defines_order";}i:8;a:7:{s:4:"name";s:7:"visible";s:7:"default";i:1;s:11:"default_raw";s:1:"1";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:31:"Whether the field is searchable";s:11:"phpdoc_name";s:7:"visible";}i:9;a:7:{s:4:"name";s:10:"searchable";s:7:"default";i:1;s:11:"default_raw";s:1:"1";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:52:"Whether the field is visible when an entry is viewed";s:11:"phpdoc_name";s:10:"searchable";}i:10;a:7:{s:4:"name";s:7:"default";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:27:"Default value for the field";s:11:"phpdoc_name";s:7:"default";}i:11;a:7:{s:4:"name";s:8:"required";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:29:"Whether the field is required";s:11:"phpdoc_name";s:8:"required";}i:12;a:7:{s:4:"name";s:15:"put_in_category";s:7:"default";i:1;s:11:"default_raw";s:1:"1";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:93:"Whether the field is to be shown in category views (not applicable for the list display type)";s:11:"phpdoc_name";s:15:"put_in_category";}i:13;a:7:{s:4:"name";s:13:"put_in_search";s:7:"default";i:1;s:11:"default_raw";s:1:"1";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:91:"Whether the field is to be shown in search views (not applicable for the list display type)";s:11:"phpdoc_name";s:13:"put_in_search";}i:14;a:7:{s:4:"name";s:7:"options";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:13:"Field options";s:11:"phpdoc_name";s:7:"options";}}s:4:"name";s:16:"get_field_fields";s:11:"description";s:120:"Get Tempcode for a catalogue field adding/editing form (many of these are put together to add/edit a single catalogue!).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: the Tempcode for the visible fields, and the Tempcode for the hidden fields";}}s:17:"fill_in_edit_form";a:6:{s:8:"filename";s:36:"cms/pages/modules/cms_catalogues.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:14:"catalogue_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:14:"catalogue_name";}}s:4:"name";s:17:"fill_in_edit_form";s:11:"description";s:38:"Standard crud_module edit form filler.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: the Tempcode for the visible fields, and the Tempcode for the hidden fields";}}s:17:"add_actualisation";a:6:{s:8:"filename";s:36:"cms/pages/modules/cms_catalogues.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"add_actualisation";s:11:"description";s:36:"Standard crud_module add actualiser.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The entry added";}}s:18:"edit_actualisation";a:5:{s:8:"filename";s:36:"cms/pages/modules/cms_catalogues.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"old_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:8:"old_name";}}s:4:"name";s:18:"edit_actualisation";s:11:"description";s:37:"Standard crud_module edit actualiser.";s:5:"flags";a:0:{}}s:20:"delete_actualisation";a:5:{s:8:"filename";s:36:"cms/pages/modules/cms_catalogues.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"The entry being deleted";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:20:"delete_actualisation";s:11:"description";s:39:"Standard crud_module delete actualiser.";s:5:"flags";a:0:{}}s:15:"do_next_manager";a:6:{s:8:"filename";s:36:"cms/pages/modules/cms_catalogues.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:38:"The title (output of get_screen_title)";s:11:"phpdoc_name";s:5:"title";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:46:"Some description to show, saying what happened";s:11:"phpdoc_name";s:11:"description";}i:2;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:55:"The catalogue name we were working with (null: deleted)";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:15:"do_next_manager";s:11:"description";s:59:"The do-next manager for after catalogue content management.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:25:"Module_cms_catalogues_alt";s:7:"comment";b:1;}s:15:"Module_cms_chat";a:3:{s:9:"functions";a:16:{s:4:"info";a:6:{s:8:"filename";s:30:"cms/pages/modules/cms_chat.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:16:"get_entry_points";a:6:{s:8:"filename";s:30:"cms/pages/modules/cms_chat.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:23:"get_privilege_overrides";a:6:{s:8:"filename";s:30:"cms/pages/modules/cms_chat.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"get_privilege_overrides";s:11:"description";s:54:"Find privileges defined as overridable by this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:130:"A map of privileges that are overridable; privilege to 0 or 1. 0 means "not category overridable". 1 means "category overridable".";}}s:7:"pre_run";a:6:{s:8:"filename";s:30:"cms/pages/modules/cms_chat.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:30:"cms/pages/modules/cms_chat.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:16:"chat_choose_room";a:6:{s:8:"filename";s:30:"cms/pages/modules/cms_chat.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"chat_choose_room";s:11:"description";s:60:"The main user interface for choosing a chatroom to moderate.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"The UI.";}}s:22:"_sort_chat_browse_rows";a:6:{s:8:"filename";s:30:"cms/pages/modules/cms_chat.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:1:"a";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:10:"First row.";s:11:"phpdoc_name";s:1:"a";}i:1;a:5:{s:4:"name";s:1:"b";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:11:"Second row.";s:11:"phpdoc_name";s:1:"b";}}s:4:"name";s:22:"_sort_chat_browse_rows";s:11:"description";s:30:"Sort chatroom rows (callback).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:13:"Sorting code.";}}s:18:"moderate_chat_room";a:6:{s:8:"filename";s:30:"cms/pages/modules/cms_chat.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"moderate_chat_room";s:11:"description";s:50:"The main user interface for moderating a chatroom.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"The UI.";}}s:8:"chat_ban";a:6:{s:8:"filename";s:30:"cms/pages/modules/cms_chat.php";s:10:"parameters";a:0:{}s:4:"name";s:8:"chat_ban";s:11:"description";s:37:"The actualiser for banning a chatter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"The UI.";}}s:10:"chat_unban";a:6:{s:8:"filename";s:30:"cms/pages/modules/cms_chat.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"chat_unban";s:11:"description";s:39:"The actualiser for unbanning a chatter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"The UI.";}}s:17:"chat_edit_message";a:6:{s:8:"filename";s:30:"cms/pages/modules/cms_chat.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"chat_edit_message";s:11:"description";s:29:"The UI for editing a message.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"The UI.";}}s:18:"_chat_edit_message";a:6:{s:8:"filename";s:30:"cms/pages/modules/cms_chat.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"_chat_edit_message";s:11:"description";s:37:"The actualiser for editing a message.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"The UI.";}}s:20:"_chat_delete_message";a:6:{s:8:"filename";s:30:"cms/pages/modules/cms_chat.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"_chat_delete_message";s:11:"description";s:38:"The actualiser for deleting a message.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"The UI.";}}s:24:"chat_delete_all_messages";a:6:{s:8:"filename";s:30:"cms/pages/modules/cms_chat.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"chat_delete_all_messages";s:11:"description";s:47:"The UI for deleting all the messages in a room.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"The UI.";}}s:25:"_chat_delete_all_messages";a:6:{s:8:"filename";s:30:"cms/pages/modules/cms_chat.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"_chat_delete_all_messages";s:11:"description";s:55:"The actualiser for deleting all the messages in a room.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"The UI.";}}s:26:"_chat_delete_many_messages";a:6:{s:8:"filename";s:30:"cms/pages/modules/cms_chat.php";s:10:"parameters";a:0:{}s:4:"name";s:26:"_chat_delete_many_messages";s:11:"description";s:62:"The actualiser for deleting all the ticked messages in a room.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"The UI.";}}}s:4:"name";s:15:"Module_cms_chat";s:7:"comment";b:1;}s:21:"Module_cms_cns_groups";a:3:{s:9:"functions";a:13:{s:16:"get_entry_points";a:6:{s:8:"filename";s:36:"cms/pages/modules/cms_cns_groups.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:36:"cms/pages/modules/cms_cns_groups.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:9:"top_level";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:77:"Whether this is running at the top level, prior to having sub-objects called.";s:11:"phpdoc_name";s:9:"top_level";}i:1;a:7:{s:4:"name";s:4:"type";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:80:"The screen type to consider for metadata purposes (null: read from environment).";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:9:"run_start";a:6:{s:8:"filename";s:36:"cms/pages/modules/cms_cns_groups.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:28:"The type of module execution";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:9:"run_start";s:11:"description";s:31:"Standard crud_module run_start.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:21:"The output of the run";}}s:6:"browse";a:6:{s:8:"filename";s:36:"cms/pages/modules/cms_cns_groups.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"browse";s:11:"description";s:50:"The do-next manager for before content management.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:15:"get_form_fields";a:6:{s:8:"filename";s:36:"cms/pages/modules/cms_cns_groups.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:2:"id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:6:"?GROUP";s:11:"description";s:91:"The usergroup being edited (null: adding, not editing, and let's choose the current member)";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:4:"name";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:18:"The usergroup name";s:11:"phpdoc_name";s:4:"name";}i:2;a:7:{s:4:"name";s:12:"group_leader";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:60:"The username of the usergroup leader (null: none picked yet)";s:11:"phpdoc_name";s:12:"group_leader";}i:3;a:7:{s:4:"name";s:15:"open_membership";s:7:"default";i:1;s:11:"default_raw";s:1:"1";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:80:"Whether members may join this usergroup without requiring any special permission";s:11:"phpdoc_name";s:15:"open_membership";}}s:4:"name";s:15:"get_form_fields";s:11:"description";s:39:"Get Tempcode for a adding/editing form.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:39:"A pair: The input fields, Hidden fields";}}s:34:"create_selection_list_choose_table";a:6:{s:8:"filename";s:36:"cms/pages/modules/cms_cns_groups.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"url_map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:55:"Details to go to build_url for link to the next screen.";s:11:"phpdoc_name";s:7:"url_map";}}s:4:"name";s:34:"create_selection_list_choose_table";s:11:"description";s:36:"Standard crud_module table function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:104:"A quartet: The choose table, Whether re-ordering is supported from this screen, Search URL, Archive URL.";}}s:29:"create_selection_list_entries";a:6:{s:8:"filename";s:36:"cms/pages/modules/cms_cns_groups.php";s:10:"parameters";a:0:{}s:4:"name";s:29:"create_selection_list_entries";s:11:"description";s:35:"Standard crud_module list function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:18:"The selection list";}}s:15:"may_delete_this";a:6:{s:8:"filename";s:36:"cms/pages/modules/cms_cns_groups.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:35:"The entry being potentially deleted";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:15:"may_delete_this";s:11:"description";s:48:"Standard crud_module delete possibility checker.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:25:"Whether it may be deleted";}}s:17:"fill_in_edit_form";a:6:{s:8:"filename";s:36:"cms/pages/modules/cms_cns_groups.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:17:"fill_in_edit_form";s:11:"description";s:37:"Standard aed_module edit form filler.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:39:"A pair: The input fields, Hidden fields";}}s:17:"add_actualisation";a:6:{s:8:"filename";s:36:"cms/pages/modules/cms_cns_groups.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"add_actualisation";s:11:"description";s:36:"Standard crud_module add actualiser.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The entry added";}}s:16:"_set_permissions";a:5:{s:8:"filename";s:36:"cms/pages/modules/cms_cns_groups.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:19:"Club (usergroup) ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:8:"forum_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:8:"Forum ID";s:11:"phpdoc_name";s:8:"forum_id";}}s:4:"name";s:16:"_set_permissions";s:11:"description";s:57:"Fix club's permissons (in case e.g. forum was recreated).";s:5:"flags";a:0:{}}s:18:"edit_actualisation";a:6:{s:8:"filename";s:36:"cms/pages/modules/cms_cns_groups.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:18:"edit_actualisation";s:11:"description";s:37:"Standard crud_module edit actualiser.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:32:"Confirm message (null: continue)";}}s:20:"delete_actualisation";a:5:{s:8:"filename";s:36:"cms/pages/modules/cms_cns_groups.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"The entry being deleted";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:20:"delete_actualisation";s:11:"description";s:39:"Standard crud_module delete actualiser.";s:5:"flags";a:0:{}}}s:4:"name";s:21:"Module_cms_cns_groups";s:7:"comment";b:1;}s:24:"Module_cms_comcode_pages";a:3:{s:9:"functions";a:12:{s:4:"info";a:6:{s:8:"filename";s:39:"cms/pages/modules/cms_comcode_pages.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:16:"get_entry_points";a:6:{s:8:"filename";s:39:"cms/pages/modules/cms_comcode_pages.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:23:"get_privilege_overrides";a:6:{s:8:"filename";s:39:"cms/pages/modules/cms_comcode_pages.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"get_privilege_overrides";s:11:"description";s:54:"Find privileges defined as overridable by this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:130:"A map of privileges that are overridable; privilege to 0 or 1. 0 means "not category overridable". 1 means "category overridable".";}}s:7:"pre_run";a:6:{s:8:"filename";s:39:"cms/pages/modules/cms_comcode_pages.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:39:"cms/pages/modules/cms_comcode_pages.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:15:"do_next_manager";a:6:{s:8:"filename";s:39:"cms/pages/modules/cms_comcode_pages.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:38:"The title (output of get_screen_title)";s:11:"phpdoc_name";s:5:"title";}i:1;a:5:{s:4:"name";s:4:"page";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:46:"The name of the page just handled (null: none)";s:11:"phpdoc_name";s:4:"page";}i:2;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:60:"The name of the zone just handled (blank: none/welcome-zone)";s:11:"phpdoc_name";s:4:"zone";}i:3;a:5:{s:4:"name";s:15:"completion_text";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:33:"The text to show (blank: default)";s:11:"phpdoc_name";s:15:"completion_text";}}s:4:"name";s:15:"do_next_manager";s:11:"description";s:49:"The do-next manager for after content management.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:34:"get_comcode_files_list_disk_search";a:6:{s:8:"filename";s:39:"cms/pages/modules/cms_comcode_pages.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"lang";s:3:"ref";b:0;s:4:"type";s:13:"LANGUAGE_NAME";s:11:"description";s:42:"The language we are searching for pages of";s:11:"phpdoc_name";s:4:"lang";}i:1;a:5:{s:4:"name";s:11:"zone_filter";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:38:"List of zones to limit to (null: none)";s:11:"phpdoc_name";s:11:"zone_filter";}}s:4:"name";s:34:"get_comcode_files_list_disk_search";s:11:"description";s:35:"Find all pages using a disk search.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:32:"The map (page name => path/time)";}}s:4:"edit";a:6:{s:8:"filename";s:39:"cms/pages/modules/cms_comcode_pages.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"edit";s:11:"description";s:32:"The UI to choose a page to edit.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:5:"_edit";a:6:{s:8:"filename";s:39:"cms/pages/modules/cms_comcode_pages.php";s:10:"parameters";a:0:{}s:4:"name";s:5:"_edit";s:11:"description";s:22:"The UI to edit a page.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:6:"__edit";a:6:{s:8:"filename";s:39:"cms/pages/modules/cms_comcode_pages.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"__edit";s:11:"description";s:38:"The actualiser to edit a Comcode page.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:21:"generate_page_sitemap";a:6:{s:8:"filename";s:39:"cms/pages/modules/cms_comcode_pages.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"generate_page_sitemap";s:11:"description";s:22:"Generate page sitemap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:18:"organise_page_tree";a:6:{s:8:"filename";s:39:"cms/pages/modules/cms_comcode_pages.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"pages";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:17:"An array of pages";s:11:"phpdoc_name";s:5:"pages";}i:1;a:7:{s:4:"name";s:5:"under";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:29:"The page we are looking under";s:11:"phpdoc_name";s:5:"under";}}s:4:"name";s:18:"organise_page_tree";s:11:"description";s:36:"Get the page sitemap tree structure.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:13:"The structure";}}}s:4:"name";s:24:"Module_cms_comcode_pages";s:7:"comment";b:1;}s:20:"Module_cms_downloads";a:3:{s:9:"functions";a:18:{s:16:"get_entry_points";a:6:{s:8:"filename";s:35:"cms/pages/modules/cms_downloads.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:23:"get_privilege_overrides";a:6:{s:8:"filename";s:35:"cms/pages/modules/cms_downloads.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"get_privilege_overrides";s:11:"description";s:54:"Find privileges defined as overridable by this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:130:"A map of privileges that are overridable; privilege to 0 or 1. 0 means "not category overridable". 1 means "category overridable".";}}s:7:"pre_run";a:6:{s:8:"filename";s:35:"cms/pages/modules/cms_downloads.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:9:"top_level";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:77:"Whether this is running at the top level, prior to having sub-objects called.";s:11:"phpdoc_name";s:9:"top_level";}i:1;a:7:{s:4:"name";s:4:"type";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:80:"The screen type to consider for metadata purposes (null: read from environment).";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:9:"run_start";a:6:{s:8:"filename";s:35:"cms/pages/modules/cms_downloads.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:28:"The type of module execution";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:9:"run_start";s:11:"description";s:31:"Standard crud_module run_start.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:21:"The output of the run";}}s:6:"browse";a:6:{s:8:"filename";s:35:"cms/pages/modules/cms_downloads.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"browse";s:11:"description";s:59:"The do-next manager for before download content management.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:16:"import_interface";a:6:{s:8:"filename";s:35:"cms/pages/modules/cms_downloads.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"import_interface";s:11:"description";s:35:"The UI for importing FTP downloads.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:7:"_import";a:6:{s:8:"filename";s:35:"cms/pages/modules/cms_downloads.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"_import";s:11:"description";s:43:"The actualiser for importing FTP downloads.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:17:"import_interface2";a:6:{s:8:"filename";s:35:"cms/pages/modules/cms_downloads.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"import_interface2";s:11:"description";s:42:"The UI for importing filesystem downloads.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:8:"_import2";a:6:{s:8:"filename";s:35:"cms/pages/modules/cms_downloads.php";s:10:"parameters";a:0:{}s:4:"name";s:8:"_import2";s:11:"description";s:50:"The actualiser for importing filesystem downloads.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:31:"create_selection_list_ajax_tree";a:6:{s:8:"filename";s:35:"cms/pages/modules/cms_downloads.php";s:10:"parameters";a:0:{}s:4:"name";s:31:"create_selection_list_ajax_tree";s:11:"description";s:35:"Standard crud_module list function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"A triple: The tree field (Tempcode), Search URL, Archive URL";}}s:15:"get_form_fields";a:6:{s:8:"filename";s:35:"cms/pages/modules/cms_downloads.php";s:10:"parameters";a:20:{i:0;a:7:{s:4:"name";s:2:"id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:34:"The ID of the download (null: new)";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:4:"name";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:24:"The name of the download";s:11:"phpdoc_name";s:4:"name";}i:2;a:7:{s:4:"name";s:11:"category_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:35:"The download category (null: first)";s:11:"phpdoc_name";s:11:"category_id";}i:3;a:7:{s:4:"name";s:3:"url";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:33:"The URL for the downloadable file";s:11:"phpdoc_name";s:3:"url";}i:4;a:7:{s:4:"name";s:6:"author";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:22:"The name of the author";s:11:"phpdoc_name";s:6:"author";}i:5;a:7:{s:4:"name";s:11:"description";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:28:"Description for the download";s:11:"phpdoc_name";s:11:"description";}i:6;a:7:{s:4:"name";s:18:"additional_details";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:42:"Supplementary description for the download";s:11:"phpdoc_name";s:18:"additional_details";}i:7;a:7:{s:4:"name";s:11:"out_mode_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:63:"The ID of the download this download is out-moding (null: none)";s:11:"phpdoc_name";s:11:"out_mode_id";}i:8;a:7:{s:4:"name";s:9:"validated";s:7:"default";i:1;s:11:"default_raw";s:1:"1";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:33:"Whether the download is validated";s:11:"phpdoc_name";s:9:"validated";}i:9;a:7:{s:4:"name";s:12:"allow_rating";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:81:"Whether rating is allowed (null: decide statistically, based on existing choices)";s:11:"phpdoc_name";s:12:"allow_rating";}i:10;a:7:{s:4:"name";s:14:"allow_comments";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:14:"?SHORT_INTEGER";s:11:"description";s:114:"Whether comments are allowed (0=no, 1=yes, 2=review style) (null: decide statistically, based on existing choices)";s:11:"phpdoc_name";s:14:"allow_comments";}i:11;a:7:{s:4:"name";s:16:"allow_trackbacks";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:86:"Whether trackbacks are allowed (null: decide statistically, based on existing choices)";s:11:"phpdoc_name";s:16:"allow_trackbacks";}i:12;a:7:{s:4:"name";s:5:"notes";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:5:"Notes";s:11:"phpdoc_name";s:5:"notes";}i:13;a:7:{s:4:"name";s:9:"file_size";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"The file size (null: not added yet therefore unknown)";s:11:"phpdoc_name";s:9:"file_size";}i:14;a:7:{s:4:"name";s:4:"cost";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:30:"The point cost of the download";s:11:"phpdoc_name";s:4:"cost";}i:15;a:7:{s:4:"name";s:21:"submitter_gets_points";s:7:"default";i:1;s:11:"default_raw";s:1:"1";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:41:"Whether the submitter gets the point cost";s:11:"phpdoc_name";s:21:"submitter_gets_points";}i:16;a:7:{s:4:"name";s:17:"original_filename";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:110:"The original file name for the file (we can't rely on the one on disk) (null: not added yet therefore unknown)";s:11:"phpdoc_name";s:17:"original_filename";}i:17;a:7:{s:4:"name";s:7:"licence";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:31:"The licence to use (null: none)";s:11:"phpdoc_name";s:7:"licence";}i:18;a:7:{s:4:"name";s:11:"default_pic";s:7:"default";i:1;s:11:"default_raw";s:1:"1";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:73:"Which image to use for the downloads representative image (counts from 1)";s:11:"phpdoc_name";s:11:"default_pic";}i:19;a:7:{s:4:"name";s:12:"url_redirect";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:19:"The URL to redirect";s:11:"phpdoc_name";s:12:"url_redirect";}}s:4:"name";s:15:"get_form_fields";s:11:"description";s:48:"Get Tempcode for a download adding/editing form.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: the Tempcode for the visible fields, and the Tempcode for the hidden fields";}}s:13:"get_submitter";a:6:{s:8:"filename";s:35:"cms/pages/modules/cms_downloads.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:43:"The entry for which the submitter is sought";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:13:"get_submitter";s:11:"description";s:38:"Standard crud_module submitter getter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:97:"The submitter, and the time of submission (null submission time implies no known submission time)";}}s:7:"get_cat";a:6:{s:8:"filename";s:35:"cms/pages/modules/cms_downloads.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:37:"The entry for which the cat is sought";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:7:"get_cat";s:11:"description";s:32:"Standard crud_module cat getter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:7:"The cat";}}s:17:"fill_in_edit_form";a:6:{s:8:"filename";s:35:"cms/pages/modules/cms_downloads.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:3:"_id";}}s:4:"name";s:17:"fill_in_edit_form";s:11:"description";s:38:"Standard crud_module edit form filler.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"A tuple of lots of info";}}s:17:"add_actualisation";a:6:{s:8:"filename";s:35:"cms/pages/modules/cms_downloads.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"add_actualisation";s:11:"description";s:36:"Standard crud_module add actualiser.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"The ID of the new entry";}}s:18:"edit_actualisation";a:5:{s:8:"filename";s:35:"cms/pages/modules/cms_downloads.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:3:"_id";}}s:4:"name";s:18:"edit_actualisation";s:11:"description";s:37:"Standard crud_module edit actualiser.";s:5:"flags";a:0:{}}s:20:"delete_actualisation";a:5:{s:8:"filename";s:35:"cms/pages/modules/cms_downloads.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"The entry being deleted";s:11:"phpdoc_name";s:3:"_id";}}s:4:"name";s:20:"delete_actualisation";s:11:"description";s:39:"Standard crud_module delete actualiser.";s:5:"flags";a:0:{}}s:15:"do_next_manager";a:6:{s:8:"filename";s:35:"cms/pages/modules/cms_downloads.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:38:"The title (output of get_screen_title)";s:11:"phpdoc_name";s:5:"title";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:46:"Some description to show, saying what happened";s:11:"phpdoc_name";s:11:"description";}i:2;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:47:"The ID of whatever was just handled (null: N/A)";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:15:"do_next_manager";s:11:"description";s:72:"The do-next manager for after download content management (events only).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:20:"Module_cms_downloads";s:7:"comment";b:1;}s:24:"Module_cms_downloads_alt";a:3:{s:9:"functions";a:7:{s:29:"create_selection_list_entries";a:6:{s:8:"filename";s:35:"cms/pages/modules/cms_downloads.php";s:10:"parameters";a:0:{}s:4:"name";s:29:"create_selection_list_entries";s:11:"description";s:40:"Standard CRUD-module entry list fetcher.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:8:"The list";}}s:15:"get_form_fields";a:6:{s:8:"filename";s:35:"cms/pages/modules/cms_downloads.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:5:"title";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:24:"The title of the licence";s:11:"phpdoc_name";s:5:"title";}i:1;a:7:{s:4:"name";s:4:"text";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:23:"The text of the licence";s:11:"phpdoc_name";s:4:"text";}}s:4:"name";s:15:"get_form_fields";s:11:"description";s:48:"Get Tempcode for a download adding/editing form.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:39:"A pair: The input fields, Hidden fields";}}s:17:"fill_in_edit_form";a:6:{s:8:"filename";s:35:"cms/pages/modules/cms_downloads.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:3:"_id";}}s:4:"name";s:17:"fill_in_edit_form";s:11:"description";s:38:"Standard crud_module edit form filler.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:39:"A pair: The input fields, Hidden fields";}}s:17:"add_actualisation";a:6:{s:8:"filename";s:35:"cms/pages/modules/cms_downloads.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"add_actualisation";s:11:"description";s:36:"Standard crud_module add actualiser.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"The ID of the new entry";}}s:18:"edit_actualisation";a:5:{s:8:"filename";s:35:"cms/pages/modules/cms_downloads.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:3:"_id";}}s:4:"name";s:18:"edit_actualisation";s:11:"description";s:37:"Standard crud_module edit actualiser.";s:5:"flags";a:0:{}}s:20:"delete_actualisation";a:5:{s:8:"filename";s:35:"cms/pages/modules/cms_downloads.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"The entry being deleted";s:11:"phpdoc_name";s:3:"_id";}}s:4:"name";s:20:"delete_actualisation";s:11:"description";s:39:"Standard crud_module delete actualiser.";s:5:"flags";a:0:{}}s:15:"do_next_manager";a:6:{s:8:"filename";s:35:"cms/pages/modules/cms_downloads.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:38:"The title (output of get_screen_title)";s:11:"phpdoc_name";s:5:"title";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:46:"Some description to show, saying what happened";s:11:"phpdoc_name";s:11:"description";}i:2;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:47:"The ID of whatever was just handled (null: N/A)";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:15:"do_next_manager";s:11:"description";s:72:"The do-next manager for after download content management (events only).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:24:"Module_cms_downloads_alt";s:7:"comment";b:1;}s:24:"Module_cms_downloads_cat";a:3:{s:9:"functions";a:8:{s:31:"create_selection_list_ajax_tree";a:6:{s:8:"filename";s:35:"cms/pages/modules/cms_downloads.php";s:10:"parameters";a:0:{}s:4:"name";s:31:"create_selection_list_ajax_tree";s:11:"description";s:35:"Standard crud_module list function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"A triple: The tree field (Tempcode), Search URL, Archive URL";}}s:15:"get_form_fields";a:6:{s:8:"filename";s:35:"cms/pages/modules/cms_downloads.php";s:10:"parameters";a:7:{i:0;a:7:{s:4:"name";s:2:"id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:27:"The download ID (null: new)";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:8:"category";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:33:"The name of the download category";s:11:"phpdoc_name";s:8:"category";}i:2;a:7:{s:4:"name";s:9:"parent_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:45:"The download category parent (null: use root)";s:11:"phpdoc_name";s:9:"parent_id";}i:3;a:7:{s:4:"name";s:11:"description";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:11:"Description";s:11:"phpdoc_name";s:11:"description";}i:4;a:7:{s:4:"name";s:5:"notes";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:5:"Notes";s:11:"phpdoc_name";s:5:"notes";}i:5;a:7:{s:4:"name";s:11:"category_id";s:7:"default";i:-1;s:11:"default_raw";s:2:"-1";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:65:"The ID of the download category (null: we're adding, not editing)";s:11:"phpdoc_name";s:11:"category_id";}i:6;a:7:{s:4:"name";s:9:"rep_image";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:39:"The rep-image for the download category";s:11:"phpdoc_name";s:9:"rep_image";}}s:4:"name";s:15:"get_form_fields";s:11:"description";s:57:"Get Tempcode for a download category adding/editing form.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: the Tempcode for the visible fields, and the Tempcode for the hidden fields";}}s:17:"fill_in_edit_form";a:6:{s:8:"filename";s:35:"cms/pages/modules/cms_downloads.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:17:"fill_in_edit_form";s:11:"description";s:38:"Standard crud_module edit form filler.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:39:"A pair: The input fields, Hidden fields";}}s:17:"add_actualisation";a:6:{s:8:"filename";s:35:"cms/pages/modules/cms_downloads.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"add_actualisation";s:11:"description";s:36:"Standard crud_module add actualiser.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The entry added";}}s:18:"edit_actualisation";a:5:{s:8:"filename";s:35:"cms/pages/modules/cms_downloads.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:18:"edit_actualisation";s:11:"description";s:37:"Standard crud_module edit actualiser.";s:5:"flags";a:0:{}}s:20:"delete_actualisation";a:5:{s:8:"filename";s:35:"cms/pages/modules/cms_downloads.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"The entry being deleted";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:20:"delete_actualisation";s:11:"description";s:39:"Standard crud_module delete actualiser.";s:5:"flags";a:0:{}}s:15:"do_next_manager";a:6:{s:8:"filename";s:35:"cms/pages/modules/cms_downloads.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:38:"The title (output of get_screen_title)";s:11:"phpdoc_name";s:5:"title";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:46:"Some description to show, saying what happened";s:11:"phpdoc_name";s:11:"description";}i:2;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:47:"The ID of whatever was just handled (null: N/A)";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:15:"do_next_manager";s:11:"description";s:77:"The do-next manager for after download content management (event types only).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:16:"_do_next_manager";a:6:{s:8:"filename";s:35:"cms/pages/modules/cms_downloads.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:38:"The title (output of get_screen_title)";s:11:"phpdoc_name";s:5:"title";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:46:"Some description to show, saying what happened";s:11:"phpdoc_name";s:11:"description";}i:2;a:7:{s:4:"name";s:2:"id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:53:"The ID of whatever was just handled (null: delete/NA)";s:11:"phpdoc_name";s:2:"id";}i:3;a:7:{s:4:"name";s:11:"category_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:53:"The category ID we were working in (null: deleted/NA)";s:11:"phpdoc_name";s:11:"category_id";}i:4;a:7:{s:4:"name";s:19:"download_licence_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:61:"The download licence ID we were working in (null: deleted/NA)";s:11:"phpdoc_name";s:19:"download_licence_id";}}s:4:"name";s:16:"_do_next_manager";s:11:"description";s:58:"The do-next manager for after download content management.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:24:"Module_cms_downloads_cat";s:7:"comment";b:1;}s:20:"Module_cms_galleries";a:3:{s:9:"functions";a:26:{s:16:"get_entry_points";a:6:{s:8:"filename";s:35:"cms/pages/modules/cms_galleries.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:23:"get_privilege_overrides";a:6:{s:8:"filename";s:35:"cms/pages/modules/cms_galleries.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"get_privilege_overrides";s:11:"description";s:54:"Find privileges defined as overridable by this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:130:"A map of privileges that are overridable; privilege to 0 or 1. 0 means "not category overridable". 1 means "category overridable".";}}s:7:"pre_run";a:6:{s:8:"filename";s:35:"cms/pages/modules/cms_galleries.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:9:"top_level";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:77:"Whether this is running at the top level, prior to having sub-objects called.";s:11:"phpdoc_name";s:9:"top_level";}i:1;a:7:{s:4:"name";s:4:"type";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:80:"The screen type to consider for metadata purposes (null: read from environment).";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:9:"run_start";a:6:{s:8:"filename";s:35:"cms/pages/modules/cms_galleries.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:28:"The type of module execution";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:9:"run_start";s:11:"description";s:31:"Standard crud_module run_start.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:21:"The output of the run";}}s:6:"browse";a:6:{s:8:"filename";s:35:"cms/pages/modules/cms_galleries.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"browse";s:11:"description";s:50:"The do-next manager for before content management.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:6:"import";a:6:{s:8:"filename";s:35:"cms/pages/modules/cms_galleries.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"import";s:11:"description";s:42:"The UI to choose a gallery to import into.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:7:"_import";a:6:{s:8:"filename";s:35:"cms/pages/modules/cms_galleries.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"_import";s:11:"description";s:32:"The UI to import into a gallery.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:8:"__import";a:6:{s:8:"filename";s:35:"cms/pages/modules/cms_galleries.php";s:10:"parameters";a:0:{}s:4:"name";s:8:"__import";s:11:"description";s:50:"The actualiser to import a zip/tar into a gallery.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:11:"_sort_media";a:5:{s:8:"filename";s:35:"cms/pages/modules/cms_galleries.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"directory";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:46:"The unsorted media, will be saved by reference";s:11:"phpdoc_name";s:9:"directory";}}s:4:"name";s:11:"_sort_media";s:11:"description";s:49:"Sort a directory of gallery media being imported.";s:5:"flags";a:0:{}}s:8:"orphaned";a:6:{s:8:"filename";s:35:"cms/pages/modules/cms_galleries.php";s:10:"parameters";a:0:{}s:4:"name";s:8:"orphaned";s:11:"description";s:64:"The actualiser to simple add/delete orphaned files in a gallery.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:18:"store_from_archive";a:6:{s:8:"filename";s:35:"cms/pages/modules/cms_galleries.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:4:"file";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"The filename";s:11:"phpdoc_name";s:4:"file";}i:1;a:5:{s:4:"name";s:2:"in";s:3:"ref";b:1;s:4:"type";s:4:"PATH";s:11:"description";s:39:"Path to data file (will be copied from)";s:11:"phpdoc_name";s:2:"in";}i:2;a:5:{s:4:"name";s:3:"cat";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:21:"The gallery to add to";s:11:"phpdoc_name";s:3:"cat";}i:3;a:7:{s:4:"name";s:4:"time";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:5:"?TIME";s:11:"description";s:28:"Timestamp to use (null: now)";s:11:"phpdoc_name";s:4:"time";}}s:4:"name";s:18:"store_from_archive";s:11:"description";s:99:"Take some data and write it to be a file in the gallery uploads directory, and add it to a gallery.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:50:"A pair: The media type, The media ID (null: error)";}}s:10:"orphan_add";a:6:{s:8:"filename";s:35:"cms/pages/modules/cms_galleries.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"orphan_add";s:11:"description";s:57:"The actualiser to simple add an orphan file to a gallery.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:26:"has_at_least_one_watermark";a:6:{s:8:"filename";s:35:"cms/pages/modules/cms_galleries.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:3:"cat";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:54:"The gallery (null: all the current user has access to)";s:11:"phpdoc_name";s:3:"cat";}}s:4:"name";s:26:"has_at_least_one_watermark";s:11:"description";s:61:"See if a gallery has any watermarks to use, or all galleries.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:32:"Whether watermarks are available";}}s:10:"simple_add";a:6:{s:8:"filename";s:35:"cms/pages/modules/cms_galleries.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:3:"url";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:19:"The URL to the file";s:11:"phpdoc_name";s:3:"url";}i:1;a:5:{s:4:"name";s:9:"thumb_url";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:25:"The thumb URL to the file";s:11:"phpdoc_name";s:9:"thumb_url";}i:2;a:5:{s:4:"name";s:4:"file";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"The filename";s:11:"phpdoc_name";s:4:"file";}i:3;a:5:{s:4:"name";s:3:"cat";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:21:"The gallery to add to";s:11:"phpdoc_name";s:3:"cat";}i:4;a:7:{s:4:"name";s:4:"time";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:5:"?TIME";s:11:"description";s:28:"Timestamp to use (null: now)";s:11:"phpdoc_name";s:4:"time";}}s:4:"name";s:10:"simple_add";s:11:"description";s:70:"Take a file in the gallery uploads directory, and add it to a gallery.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:50:"A pair: The media type, The media ID (null: error)";}}s:13:"orphan_delete";a:6:{s:8:"filename";s:35:"cms/pages/modules/cms_galleries.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"orphan_delete";s:11:"description";s:47:"The actualiser to simple delete an orphan file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:32:"handle_resizing_and_watermarking";a:5:{s:8:"filename";s:35:"cms/pages/modules/cms_galleries.php";s:10:"parameters";a:0:{}s:4:"name";s:32:"handle_resizing_and_watermarking";s:11:"description";s:102:"Filter any uploaded image such that it is watermarked. Also has a side effect of fixing EXIF rotation.";s:5:"flags";a:0:{}}s:20:"check_images_allowed";a:6:{s:8:"filename";s:35:"cms/pages/modules/cms_galleries.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:3:"cat";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:11:"The gallery";s:11:"phpdoc_name";s:3:"cat";}i:1;a:7:{s:4:"name";s:18:"tolerate_non_exist";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:52:"Whether to tolerate the non-existance of the gallery";s:11:"phpdoc_name";s:18:"tolerate_non_exist";}}s:4:"name";s:20:"check_images_allowed";s:11:"description";s:93:"Kills Composr if someone is trying to add an image to a gallery that does not support images.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?integer";s:11:"description";s:41:"Number allowed remaining (null: no limit)";}}s:31:"create_selection_list_ajax_tree";a:6:{s:8:"filename";s:35:"cms/pages/modules/cms_galleries.php";s:10:"parameters";a:0:{}s:4:"name";s:31:"create_selection_list_ajax_tree";s:11:"description";s:35:"Standard crud_module list function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"A triple: The tree field (Tempcode), Search URL, Archive URL";}}s:15:"get_form_fields";a:6:{s:8:"filename";s:35:"cms/pages/modules/cms_galleries.php";s:10:"parameters";a:12:{i:0;a:7:{s:4:"name";s:2:"id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:31:"The ID of the image (null: new)";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:5:"title";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:9:"The title";s:11:"phpdoc_name";s:5:"title";}i:2;a:7:{s:4:"name";s:3:"cat";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:11:"The gallery";s:11:"phpdoc_name";s:3:"cat";}i:3;a:7:{s:4:"name";s:11:"description";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:21:"The image description";s:11:"phpdoc_name";s:11:"description";}i:4;a:7:{s:4:"name";s:3:"url";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:16:"URL to the image";s:11:"phpdoc_name";s:3:"url";}i:5;a:7:{s:4:"name";s:9:"thumb_url";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:26:"URL to the image thumbnail";s:11:"phpdoc_name";s:9:"thumb_url";}i:6;a:7:{s:4:"name";s:9:"validated";s:7:"default";i:1;s:11:"default_raw";s:1:"1";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:23:"Image validation status";s:11:"phpdoc_name";s:9:"validated";}i:7;a:7:{s:4:"name";s:12:"allow_rating";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:81:"Whether rating is allowed (null: decide statistically, based on existing choices)";s:11:"phpdoc_name";s:12:"allow_rating";}i:8;a:7:{s:4:"name";s:14:"allow_comments";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:14:"?SHORT_INTEGER";s:11:"description";s:114:"Whether comments are allowed (0=no, 1=yes, 2=review style) (null: decide statistically, based on existing choices)";s:11:"phpdoc_name";s:14:"allow_comments";}i:9;a:7:{s:4:"name";s:16:"allow_trackbacks";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:86:"Whether trackbacks are allowed (null: decide statistically, based on existing choices)";s:11:"phpdoc_name";s:16:"allow_trackbacks";}i:10;a:7:{s:4:"name";s:5:"notes";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:19:"Notes for the image";s:11:"phpdoc_name";s:5:"notes";}i:11;a:7:{s:4:"name";s:7:"regions";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:61:"The regions (empty: not region-limited) (null: same as empty)";s:11:"phpdoc_name";s:7:"regions";}}s:4:"name";s:15:"get_form_fields";s:11:"description";s:46:"Get Tempcode for an image adding/editing form.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: the Tempcode for the visible fields, and the Tempcode for the hidden fields";}}s:13:"get_submitter";a:6:{s:8:"filename";s:35:"cms/pages/modules/cms_galleries.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:43:"The entry for which the submitter is sought";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:13:"get_submitter";s:11:"description";s:38:"Standard crud_module submitter getter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:97:"The submitter, and the time of submission (null submission time implies no known submission time)";}}s:7:"get_cat";a:6:{s:8:"filename";s:35:"cms/pages/modules/cms_galleries.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:37:"The entry for which the cat is sought";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:7:"get_cat";s:11:"description";s:32:"Standard crud_module cat getter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:7:"The cat";}}s:17:"fill_in_edit_form";a:6:{s:8:"filename";s:35:"cms/pages/modules/cms_galleries.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:3:"_id";}}s:4:"name";s:17:"fill_in_edit_form";s:11:"description";s:38:"Standard crud_module edit form filler.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"A tuple of lots of info";}}s:17:"add_actualisation";a:6:{s:8:"filename";s:35:"cms/pages/modules/cms_galleries.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"add_actualisation";s:11:"description";s:36:"Standard crud_module add actualiser.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:25:"The ID of the entry added";}}s:18:"edit_actualisation";a:5:{s:8:"filename";s:35:"cms/pages/modules/cms_galleries.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:3:"_id";}}s:4:"name";s:18:"edit_actualisation";s:11:"description";s:37:"Standard crud_module edit actualiser.";s:5:"flags";a:0:{}}s:20:"delete_actualisation";a:5:{s:8:"filename";s:35:"cms/pages/modules/cms_galleries.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"The entry being deleted";s:11:"phpdoc_name";s:3:"_id";}}s:4:"name";s:20:"delete_actualisation";s:11:"description";s:39:"Standard crud_module delete actualiser.";s:5:"flags";a:0:{}}s:15:"do_next_manager";a:6:{s:8:"filename";s:35:"cms/pages/modules/cms_galleries.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:38:"The title (output of get_screen_title)";s:11:"phpdoc_name";s:5:"title";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:46:"Some description to show, saying what happened";s:11:"phpdoc_name";s:11:"description";}i:2;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:47:"The ID of whatever was just handled (null: N/A)";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:15:"do_next_manager";s:11:"description";s:49:"The do-next manager for after content management.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:20:"Module_cms_galleries";s:7:"comment";b:1;}s:24:"Module_cms_galleries_alt";a:3:{s:9:"functions";a:11:{s:20:"check_videos_allowed";a:6:{s:8:"filename";s:35:"cms/pages/modules/cms_galleries.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:3:"cat";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:11:"The gallery";s:11:"phpdoc_name";s:3:"cat";}i:1;a:7:{s:4:"name";s:18:"tolerate_non_exist";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:52:"Whether to tolerate the non-existance of the gallery";s:11:"phpdoc_name";s:18:"tolerate_non_exist";}}s:4:"name";s:20:"check_videos_allowed";s:11:"description";s:92:"Kills Composr if someone is trying to add a video to a gallery that does not support videos.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?integer";s:11:"description";s:41:"Number allowed remaining (null: no limit)";}}s:22:"get_special_video_info";a:6:{s:8:"filename";s:35:"cms/pages/modules/cms_galleries.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"get_special_video_info";s:11:"description";s:48:"Extract video meta info from any uploaded video.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:68:"A triplet of 3 "?integer"'s: video width, video height, video length";}}s:31:"create_selection_list_ajax_tree";a:6:{s:8:"filename";s:35:"cms/pages/modules/cms_galleries.php";s:10:"parameters";a:0:{}s:4:"name";s:31:"create_selection_list_ajax_tree";s:11:"description";s:35:"Standard crud_module list function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"A triple: The tree field (Tempcode), Search URL, Archive URL";}}s:15:"get_form_fields";a:6:{s:8:"filename";s:35:"cms/pages/modules/cms_galleries.php";s:10:"parameters";a:15:{i:0;a:7:{s:4:"name";s:2:"id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:31:"The ID of the video (null: new)";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:5:"title";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:9:"The title";s:11:"phpdoc_name";s:5:"title";}i:2;a:7:{s:4:"name";s:3:"cat";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:11:"The gallery";s:11:"phpdoc_name";s:3:"cat";}i:3;a:7:{s:4:"name";s:11:"description";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:21:"The video description";s:11:"phpdoc_name";s:11:"description";}i:4;a:7:{s:4:"name";s:3:"url";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:48:"The URL to the video file (blank: not yet added)";s:11:"phpdoc_name";s:3:"url";}i:5;a:7:{s:4:"name";s:9:"thumb_url";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:24:"The URL to the thumbnail";s:11:"phpdoc_name";s:9:"thumb_url";}i:6;a:7:{s:4:"name";s:9:"validated";s:7:"default";i:1;s:11:"default_raw";s:1:"1";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:23:"Video validation status";s:11:"phpdoc_name";s:9:"validated";}i:7;a:7:{s:4:"name";s:12:"allow_rating";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:81:"Whether rating is allowed (null: decide statistically, based on existing choices)";s:11:"phpdoc_name";s:12:"allow_rating";}i:8;a:7:{s:4:"name";s:14:"allow_comments";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:14:"?SHORT_INTEGER";s:11:"description";s:114:"Whether comments are allowed (0=no, 1=yes, 2=review style) (null: decide statistically, based on existing choices)";s:11:"phpdoc_name";s:14:"allow_comments";}i:9;a:7:{s:4:"name";s:16:"allow_trackbacks";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:86:"Whether trackbacks are allowed (null: decide statistically, based on existing choices)";s:11:"phpdoc_name";s:16:"allow_trackbacks";}i:10;a:7:{s:4:"name";s:5:"notes";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:19:"Notes for the video";s:11:"phpdoc_name";s:5:"notes";}i:11;a:7:{s:4:"name";s:12:"video_length";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:63:"The length of the video (null: not yet added, so not yet known)";s:11:"phpdoc_name";s:12:"video_length";}i:12;a:7:{s:4:"name";s:11:"video_width";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:62:"The width of the video (null: not yet added, so not yet known)";s:11:"phpdoc_name";s:11:"video_width";}i:13;a:7:{s:4:"name";s:12:"video_height";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:63:"The height of the video (null: not yet added, so not yet known)";s:11:"phpdoc_name";s:12:"video_height";}i:14;a:7:{s:4:"name";s:7:"regions";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:61:"The regions (empty: not region-limited) (null: same as empty)";s:11:"phpdoc_name";s:7:"regions";}}s:4:"name";s:15:"get_form_fields";s:11:"description";s:45:"Get Tempcode for a video adding/editing form.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: the Tempcode for the visible fields, and the Tempcode for the hidden fields";}}s:13:"get_submitter";a:6:{s:8:"filename";s:35:"cms/pages/modules/cms_galleries.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:43:"The entry for which the submitter is sought";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:13:"get_submitter";s:11:"description";s:38:"Standard crud_module submitter getter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:97:"The submitter, and the time of submission (null submission time implies no known submission time)";}}s:7:"get_cat";a:6:{s:8:"filename";s:35:"cms/pages/modules/cms_galleries.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:37:"The entry for which the cat is sought";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:7:"get_cat";s:11:"description";s:32:"Standard crud_module cat getter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:7:"The cat";}}s:17:"fill_in_edit_form";a:6:{s:8:"filename";s:35:"cms/pages/modules/cms_galleries.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:3:"_id";}}s:4:"name";s:17:"fill_in_edit_form";s:11:"description";s:38:"Standard crud_module edit form filler.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"A tuple of lots of info";}}s:17:"add_actualisation";a:6:{s:8:"filename";s:35:"cms/pages/modules/cms_galleries.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"add_actualisation";s:11:"description";s:36:"Standard crud_module add actualiser.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:25:"The ID of the entry added";}}s:18:"edit_actualisation";a:5:{s:8:"filename";s:35:"cms/pages/modules/cms_galleries.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:3:"_id";}}s:4:"name";s:18:"edit_actualisation";s:11:"description";s:37:"Standard crud_module edit actualiser.";s:5:"flags";a:0:{}}s:20:"delete_actualisation";a:5:{s:8:"filename";s:35:"cms/pages/modules/cms_galleries.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"The entry being deleted";s:11:"phpdoc_name";s:3:"_id";}}s:4:"name";s:20:"delete_actualisation";s:11:"description";s:39:"Standard crud_module delete actualiser.";s:5:"flags";a:0:{}}s:15:"do_next_manager";a:6:{s:8:"filename";s:35:"cms/pages/modules/cms_galleries.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:38:"The title (output of get_screen_title)";s:11:"phpdoc_name";s:5:"title";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:46:"Some description to show, saying what happened";s:11:"phpdoc_name";s:11:"description";}i:2;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:47:"The ID of whatever was just handled (null: N/A)";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:15:"do_next_manager";s:11:"description";s:49:"The do-next manager for after content management.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:24:"Module_cms_galleries_alt";s:7:"comment";b:1;}s:24:"Module_cms_galleries_cat";a:3:{s:9:"functions";a:10:{s:31:"create_selection_list_ajax_tree";a:6:{s:8:"filename";s:35:"cms/pages/modules/cms_galleries.php";s:10:"parameters";a:0:{}s:4:"name";s:31:"create_selection_list_ajax_tree";s:11:"description";s:35:"Standard crud_module list function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:60:"A triple: The tree field (Tempcode), Search URL, Archive URL";}}s:15:"get_form_fields";a:6:{s:8:"filename";s:35:"cms/pages/modules/cms_galleries.php";s:10:"parameters";a:16:{i:0;a:7:{s:4:"name";s:4:"name";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:33:"The gallery codename (blank: new)";s:11:"phpdoc_name";s:4:"name";}i:1;a:7:{s:4:"name";s:8:"fullname";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:44:"The full human-readeable name of the gallery";s:11:"phpdoc_name";s:8:"fullname";}i:2;a:7:{s:4:"name";s:11:"description";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:30:"The description of the gallery";s:11:"phpdoc_name";s:11:"description";}i:3;a:7:{s:4:"name";s:5:"notes";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:40:"Hidden notes associated with the gallery";s:11:"phpdoc_name";s:5:"notes";}i:4;a:7:{s:4:"name";s:9:"parent_id";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:37:"The parent gallery (blank: no parent)";s:11:"phpdoc_name";s:9:"parent_id";}i:5;a:7:{s:4:"name";s:13:"accept_images";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:72:"Whether images may be put in this gallery (null: work out statistically)";s:11:"phpdoc_name";s:13:"accept_images";}i:6;a:7:{s:4:"name";s:13:"accept_videos";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:72:"Whether videos may be put in this gallery (null: work out statistically)";s:11:"phpdoc_name";s:13:"accept_videos";}i:7;a:7:{s:4:"name";s:17:"is_member_synched";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:84:"Whether the gallery serves as a container for automatically created member galleries";s:11:"phpdoc_name";s:17:"is_member_synched";}i:8;a:7:{s:4:"name";s:19:"flow_mode_interface";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:117:"Whether the gallery uses the flow mode interface (null: pick statistically based on current usage of other galleries)";s:11:"phpdoc_name";s:19:"flow_mode_interface";}i:9;a:7:{s:4:"name";s:9:"rep_image";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?URLPATH";s:11:"description";s:52:"The representative image of the gallery (null: none)";s:11:"phpdoc_name";s:9:"rep_image";}i:10;a:7:{s:4:"name";s:18:"watermark_top_left";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?URLPATH";s:11:"description";s:22:"Watermark (null: none)";s:11:"phpdoc_name";s:18:"watermark_top_left";}i:11;a:7:{s:4:"name";s:19:"watermark_top_right";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?URLPATH";s:11:"description";s:22:"Watermark (null: none)";s:11:"phpdoc_name";s:19:"watermark_top_right";}i:12;a:7:{s:4:"name";s:21:"watermark_bottom_left";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?URLPATH";s:11:"description";s:22:"Watermark (null: none)";s:11:"phpdoc_name";s:21:"watermark_bottom_left";}i:13;a:7:{s:4:"name";s:22:"watermark_bottom_right";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?URLPATH";s:11:"description";s:22:"Watermark (null: none)";s:11:"phpdoc_name";s:22:"watermark_bottom_right";}i:14;a:7:{s:4:"name";s:12:"allow_rating";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:81:"Whether rating is allowed (null: decide statistically, based on existing choices)";s:11:"phpdoc_name";s:12:"allow_rating";}i:15;a:7:{s:4:"name";s:14:"allow_comments";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:14:"?SHORT_INTEGER";s:11:"description";s:114:"Whether comments are allowed (0=no, 1=yes, 2=review style) (null: decide statistically, based on existing choices)";s:11:"phpdoc_name";s:14:"allow_comments";}}s:4:"name";s:15:"get_form_fields";s:11:"description";s:47:"Get Tempcode for a gallery adding/editing form.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: the Tempcode for the visible fields, and the Tempcode for the hidden fields";}}s:13:"get_submitter";a:6:{s:8:"filename";s:35:"cms/pages/modules/cms_galleries.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:43:"The entry for which the submitter is sought";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:13:"get_submitter";s:11:"description";s:38:"Standard crud_module submitter getter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:97:"The submitter, and the time of submission (null submission time implies no known submission time)";}}s:17:"fill_in_edit_form";a:6:{s:8:"filename";s:35:"cms/pages/modules/cms_galleries.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:17:"fill_in_edit_form";s:11:"description";s:38:"Standard crud_module edit form filler.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: the Tempcode for the visible fields, and the Tempcode for the hidden fields";}}s:17:"add_actualisation";a:6:{s:8:"filename";s:35:"cms/pages/modules/cms_galleries.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"add_actualisation";s:11:"description";s:36:"Standard crud_module add actualiser.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The entry added";}}s:18:"edit_actualisation";a:5:{s:8:"filename";s:35:"cms/pages/modules/cms_galleries.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:18:"edit_actualisation";s:11:"description";s:37:"Standard crud_module edit actualiser.";s:5:"flags";a:0:{}}s:15:"may_delete_this";a:6:{s:8:"filename";s:35:"cms/pages/modules/cms_galleries.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:35:"The entry being potentially deleted";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:15:"may_delete_this";s:11:"description";s:48:"Standard crud_module delete possibility checker.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:25:"Whether it may be deleted";}}s:20:"delete_actualisation";a:5:{s:8:"filename";s:35:"cms/pages/modules/cms_galleries.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"The entry being deleted";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:20:"delete_actualisation";s:11:"description";s:39:"Standard crud_module delete actualiser.";s:5:"flags";a:0:{}}s:15:"do_next_manager";a:6:{s:8:"filename";s:35:"cms/pages/modules/cms_galleries.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:38:"The title (output of get_screen_title)";s:11:"phpdoc_name";s:5:"title";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:46:"Some description to show, saying what happened";s:11:"phpdoc_name";s:11:"description";}i:2;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:47:"The ID of whatever was just handled (null: N/A)";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:15:"do_next_manager";s:11:"description";s:77:"The do-next manager for after download content management (event types only).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:16:"_do_next_manager";a:6:{s:8:"filename";s:35:"cms/pages/modules/cms_galleries.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:38:"The title (output of get_screen_title)";s:11:"phpdoc_name";s:5:"title";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:46:"Some description to show, saying what happened";s:11:"phpdoc_name";s:11:"description";}i:2;a:7:{s:4:"name";s:3:"cat";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:46:"The gallery we were working in (null: deleted)";s:11:"phpdoc_name";s:3:"cat";}i:3;a:7:{s:4:"name";s:2:"id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:47:"The ID of whatever was just handled (null: N/A)";s:11:"phpdoc_name";s:2:"id";}i:4;a:7:{s:4:"name";s:5:"video";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:36:"Whether we were working with a video";s:11:"phpdoc_name";s:5:"video";}}s:4:"name";s:16:"_do_next_manager";s:11:"description";s:61:"The do-next manager for after image/video content management.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:24:"Module_cms_galleries_cat";s:7:"comment";b:1;}s:15:"Module_cms_news";a:3:{s:9:"functions";a:17:{s:16:"get_entry_points";a:6:{s:8:"filename";s:30:"cms/pages/modules/cms_news.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:23:"get_privilege_overrides";a:6:{s:8:"filename";s:30:"cms/pages/modules/cms_news.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"get_privilege_overrides";s:11:"description";s:54:"Find privileges defined as overridable by this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:130:"A map of privileges that are overridable; privilege to 0 or 1. 0 means "not category overridable". 1 means "category overridable".";}}s:7:"pre_run";a:6:{s:8:"filename";s:30:"cms/pages/modules/cms_news.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:9:"top_level";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:77:"Whether this is running at the top level, prior to having sub-objects called.";s:11:"phpdoc_name";s:9:"top_level";}i:1;a:7:{s:4:"name";s:4:"type";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:80:"The screen type to consider for metadata purposes (null: read from environment).";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:9:"run_start";a:6:{s:8:"filename";s:30:"cms/pages/modules/cms_news.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:28:"The type of module execution";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:9:"run_start";s:11:"description";s:31:"Standard crud_module run_start.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:21:"The output of the run";}}s:6:"browse";a:6:{s:8:"filename";s:30:"cms/pages/modules/cms_news.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"browse";s:11:"description";s:50:"The do-next manager for before content management.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:34:"create_selection_list_choose_table";a:6:{s:8:"filename";s:30:"cms/pages/modules/cms_news.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"url_map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:55:"Details to go to build_url for link to the next screen.";s:11:"phpdoc_name";s:7:"url_map";}}s:4:"name";s:34:"create_selection_list_choose_table";s:11:"description";s:36:"Standard crud_module table function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:104:"A quartet: The choose table, Whether re-ordering is supported from this screen, Search URL, Archive URL.";}}s:29:"create_selection_list_entries";a:6:{s:8:"filename";s:30:"cms/pages/modules/cms_news.php";s:10:"parameters";a:0:{}s:4:"name";s:29:"create_selection_list_entries";s:11:"description";s:35:"Standard crud_module list function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:18:"The selection list";}}s:15:"get_form_fields";a:6:{s:8:"filename";s:30:"cms/pages/modules/cms_news.php";s:10:"parameters";a:15:{i:0;a:7:{s:4:"name";s:2:"id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:23:"The news ID (null: new)";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:18:"main_news_category";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:50:"The primary category for the news (null: personal)";s:11:"phpdoc_name";s:18:"main_news_category";}i:2;a:7:{s:4:"name";s:13:"news_category";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:53:"A list of categories the news is in (null: not known)";s:11:"phpdoc_name";s:13:"news_category";}i:3;a:7:{s:4:"name";s:5:"title";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:14:"The news title";s:11:"phpdoc_name";s:5:"title";}i:4;a:7:{s:4:"name";s:4:"news";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:16:"The news summary";s:11:"phpdoc_name";s:4:"news";}i:5;a:7:{s:4:"name";s:6:"author";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:22:"The name of the author";s:11:"phpdoc_name";s:6:"author";}i:6;a:7:{s:4:"name";s:9:"validated";s:7:"default";i:1;s:11:"default_raw";s:1:"1";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:29:"Whether the news is validated";s:11:"phpdoc_name";s:9:"validated";}i:7;a:7:{s:4:"name";s:12:"allow_rating";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:81:"Whether rating is allowed (null: decide statistically, based on existing choices)";s:11:"phpdoc_name";s:12:"allow_rating";}i:8;a:7:{s:4:"name";s:14:"allow_comments";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:14:"?SHORT_INTEGER";s:11:"description";s:114:"Whether comments are allowed (0=no, 1=yes, 2=review style) (null: decide statistically, based on existing choices)";s:11:"phpdoc_name";s:14:"allow_comments";}i:9;a:7:{s:4:"name";s:16:"allow_trackbacks";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:86:"Whether trackbacks are allowed (null: decide statistically, based on existing choices)";s:11:"phpdoc_name";s:16:"allow_trackbacks";}i:10;a:7:{s:4:"name";s:15:"send_trackbacks";s:7:"default";i:1;s:11:"default_raw";s:1:"1";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:42:"Whether to show the "send trackback" field";s:11:"phpdoc_name";s:15:"send_trackbacks";}i:11;a:7:{s:4:"name";s:5:"notes";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:19:"Notes for the video";s:11:"phpdoc_name";s:5:"notes";}i:12;a:7:{s:4:"name";s:5:"image";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:58:"URL to the image for the news entry (blank: use cat image)";s:11:"phpdoc_name";s:5:"image";}i:13;a:7:{s:4:"name";s:9:"scheduled";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:34:"Scheduled go-live time (null: N/A)";s:11:"phpdoc_name";s:9:"scheduled";}i:14;a:7:{s:4:"name";s:7:"regions";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:61:"The regions (empty: not region-limited) (null: same as empty)";s:11:"phpdoc_name";s:7:"regions";}}s:4:"name";s:15:"get_form_fields";s:11:"description";s:44:"Get Tempcode for a news adding/editing form.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:91:"A tuple of lots of info (fields, hidden fields, trailing fields, tabindex for posting form)";}}s:13:"get_submitter";a:6:{s:8:"filename";s:30:"cms/pages/modules/cms_news.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:43:"The entry for which the submitter is sought";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:13:"get_submitter";s:11:"description";s:38:"Standard crud_module submitter getter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:97:"The submitter, and the time of submission (null submission time implies no known submission time)";}}s:7:"get_cat";a:6:{s:8:"filename";s:30:"cms/pages/modules/cms_news.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:37:"The entry for which the cat is sought";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:7:"get_cat";s:11:"description";s:32:"Standard crud_module cat getter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:7:"The cat";}}s:17:"fill_in_edit_form";a:6:{s:8:"filename";s:30:"cms/pages/modules/cms_news.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:3:"_id";}}s:4:"name";s:17:"fill_in_edit_form";s:11:"description";s:38:"Standard crud_module edit form filler.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"A tuple of lots of info";}}s:17:"add_actualisation";a:6:{s:8:"filename";s:30:"cms/pages/modules/cms_news.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"add_actualisation";s:11:"description";s:36:"Standard crud_module add actualiser.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:25:"The ID of the entry added";}}s:18:"edit_actualisation";a:5:{s:8:"filename";s:30:"cms/pages/modules/cms_news.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:3:"_id";}}s:4:"name";s:18:"edit_actualisation";s:11:"description";s:37:"Standard crud_module edit actualiser.";s:5:"flags";a:0:{}}s:20:"delete_actualisation";a:5:{s:8:"filename";s:30:"cms/pages/modules/cms_news.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"The entry being deleted";s:11:"phpdoc_name";s:3:"_id";}}s:4:"name";s:20:"delete_actualisation";s:11:"description";s:39:"Standard crud_module delete actualiser.";s:5:"flags";a:0:{}}s:15:"do_next_manager";a:6:{s:8:"filename";s:30:"cms/pages/modules/cms_news.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:38:"The title (output of get_screen_title)";s:11:"phpdoc_name";s:5:"title";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:46:"Some description to show, saying what happened";s:11:"phpdoc_name";s:11:"description";}i:2;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:47:"The ID of whatever was just handled (null: N/A)";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:15:"do_next_manager";s:11:"description";s:72:"The do-next manager for after download content management (events only).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:11:"import_news";a:6:{s:8:"filename";s:30:"cms/pages/modules/cms_news.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"import_news";s:11:"description";s:21:"The UI to import news";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:12:"_import_news";a:6:{s:8:"filename";s:30:"cms/pages/modules/cms_news.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"_import_news";s:11:"description";s:29:"The actualiser to import news";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:15:"Module_cms_news";s:7:"comment";b:1;}s:19:"Module_cms_news_cat";a:3:{s:9:"functions";a:10:{s:34:"create_selection_list_choose_table";a:6:{s:8:"filename";s:30:"cms/pages/modules/cms_news.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"url_map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:55:"Details to go to build_url for link to the next screen.";s:11:"phpdoc_name";s:7:"url_map";}}s:4:"name";s:34:"create_selection_list_choose_table";s:11:"description";s:36:"Standard crud_module table function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:76:"A pair: The choose table, Whether re-ordering is supported from this screen.";}}s:29:"create_selection_list_entries";a:6:{s:8:"filename";s:30:"cms/pages/modules/cms_news.php";s:10:"parameters";a:0:{}s:4:"name";s:29:"create_selection_list_entries";s:11:"description";s:35:"Standard crud_module list function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:18:"The selection list";}}s:15:"get_form_fields";a:6:{s:8:"filename";s:30:"cms/pages/modules/cms_news.php";s:10:"parameters";a:6:{i:0;a:7:{s:4:"name";s:2:"id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:32:"The news category ID (null: new)";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:5:"title";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:30:"The title of the news category";s:11:"phpdoc_name";s:5:"title";}i:2;a:7:{s:4:"name";s:3:"img";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:23:"The news category image";s:11:"phpdoc_name";s:3:"img";}i:3;a:7:{s:4:"name";s:5:"notes";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:35:"Notes relating to the news category";s:11:"phpdoc_name";s:5:"notes";}i:4;a:7:{s:4:"name";s:5:"owner";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:45:"The owner of the news category (null: public)";s:11:"phpdoc_name";s:5:"owner";}i:5;a:7:{s:4:"name";s:11:"category_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:60:"The ID of this news category (null: we haven't added it yet)";s:11:"phpdoc_name";s:11:"category_id";}}s:4:"name";s:15:"get_form_fields";s:11:"description";s:53:"Get Tempcode for a news category adding/editing form.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:39:"A pair: The input fields, Hidden fields";}}s:17:"fill_in_edit_form";a:6:{s:8:"filename";s:30:"cms/pages/modules/cms_news.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:3:"_id";}}s:4:"name";s:17:"fill_in_edit_form";s:11:"description";s:38:"Standard crud_module edit form filler.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:39:"A pair: The input fields, Hidden fields";}}s:17:"add_actualisation";a:6:{s:8:"filename";s:30:"cms/pages/modules/cms_news.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"add_actualisation";s:11:"description";s:36:"Standard crud_module add actualiser.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The entry added";}}s:18:"edit_actualisation";a:5:{s:8:"filename";s:30:"cms/pages/modules/cms_news.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:18:"edit_actualisation";s:11:"description";s:37:"Standard crud_module edit actualiser.";s:5:"flags";a:0:{}}s:13:"get_submitter";a:6:{s:8:"filename";s:30:"cms/pages/modules/cms_news.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:43:"The entry for which the submitter is sought";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:13:"get_submitter";s:11:"description";s:38:"Standard crud_module submitter getter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?MEMBER";s:11:"description";s:26:"The submitter (null: none)";}}s:20:"delete_actualisation";a:5:{s:8:"filename";s:30:"cms/pages/modules/cms_news.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"The entry being deleted";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:20:"delete_actualisation";s:11:"description";s:39:"Standard crud_module delete actualiser.";s:5:"flags";a:0:{}}s:15:"do_next_manager";a:6:{s:8:"filename";s:30:"cms/pages/modules/cms_news.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:38:"The title (output of get_screen_title)";s:11:"phpdoc_name";s:5:"title";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:46:"Some description to show, saying what happened";s:11:"phpdoc_name";s:11:"description";}i:2;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:47:"The ID of whatever was just handled (null: N/A)";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:15:"do_next_manager";s:11:"description";s:77:"The do-next manager for after download content management (event types only).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:16:"_do_next_manager";a:6:{s:8:"filename";s:30:"cms/pages/modules/cms_news.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:38:"The title (output of get_screen_title)";s:11:"phpdoc_name";s:5:"title";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:46:"Some description to show, saying what happened";s:11:"phpdoc_name";s:11:"description";}i:2;a:7:{s:4:"name";s:2:"id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:47:"The ID of whatever was just handled (null: N/A)";s:11:"phpdoc_name";s:2:"id";}i:3;a:7:{s:4:"name";s:3:"cat";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:50:"The category ID we were working in (null: deleted)";s:11:"phpdoc_name";s:3:"cat";}}s:4:"name";s:16:"_do_next_manager";s:11:"description";s:54:"The do-next manager for after news content management.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:19:"Module_cms_news_cat";s:7:"comment";b:1;}s:16:"Module_cms_polls";a:3:{s:9:"functions";a:13:{s:16:"get_entry_points";a:6:{s:8:"filename";s:31:"cms/pages/modules/cms_polls.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:31:"cms/pages/modules/cms_polls.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:9:"top_level";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:77:"Whether this is running at the top level, prior to having sub-objects called.";s:11:"phpdoc_name";s:9:"top_level";}i:1;a:7:{s:4:"name";s:4:"type";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:80:"The screen type to consider for metadata purposes (null: read from environment).";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:9:"run_start";a:6:{s:8:"filename";s:31:"cms/pages/modules/cms_polls.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:28:"The type of module execution";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:9:"run_start";s:11:"description";s:31:"Standard crud_module run_start.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:21:"The output of the run";}}s:23:"get_privilege_overrides";a:6:{s:8:"filename";s:31:"cms/pages/modules/cms_polls.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"get_privilege_overrides";s:11:"description";s:54:"Find privileges defined as overridable by this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:130:"A map of privileges that are overridable; privilege to 0 or 1. 0 means "not category overridable". 1 means "category overridable".";}}s:6:"browse";a:6:{s:8:"filename";s:31:"cms/pages/modules/cms_polls.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"browse";s:11:"description";s:50:"The do-next manager for before content management.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:34:"create_selection_list_choose_table";a:6:{s:8:"filename";s:31:"cms/pages/modules/cms_polls.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"url_map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:55:"Details to go to build_url for link to the next screen.";s:11:"phpdoc_name";s:7:"url_map";}}s:4:"name";s:34:"create_selection_list_choose_table";s:11:"description";s:36:"Standard crud_module table function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:104:"A quartet: The choose table, Whether re-ordering is supported from this screen, Search URL, Archive URL.";}}s:29:"create_selection_list_entries";a:6:{s:8:"filename";s:31:"cms/pages/modules/cms_polls.php";s:10:"parameters";a:0:{}s:4:"name";s:29:"create_selection_list_entries";s:11:"description";s:35:"Standard crud_module list function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:18:"The selection list";}}s:15:"get_form_fields";a:6:{s:8:"filename";s:31:"cms/pages/modules/cms_polls.php";s:10:"parameters";a:17:{i:0;a:7:{s:4:"name";s:2:"id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:23:"The poll ID (null: new)";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:8:"question";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:12:"The question";s:11:"phpdoc_name";s:8:"question";}i:2;a:7:{s:4:"name";s:2:"a1";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:16:"The first answer";s:11:"phpdoc_name";s:2:"a1";}i:3;a:7:{s:4:"name";s:2:"a2";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:17:"The second answer";s:11:"phpdoc_name";s:2:"a2";}i:4;a:7:{s:4:"name";s:2:"a3";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:16:"The third answer";s:11:"phpdoc_name";s:2:"a3";}i:5;a:7:{s:4:"name";s:2:"a4";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:17:"The fourth answer";s:11:"phpdoc_name";s:2:"a4";}i:6;a:7:{s:4:"name";s:2:"a5";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:16:"The fifth answer";s:11:"phpdoc_name";s:2:"a5";}i:7;a:7:{s:4:"name";s:2:"a6";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:16:"The sixth answer";s:11:"phpdoc_name";s:2:"a6";}i:8;a:7:{s:4:"name";s:2:"a7";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:18:"The seventh answer";s:11:"phpdoc_name";s:2:"a7";}i:9;a:7:{s:4:"name";s:2:"a8";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:16:"The eigth answer";s:11:"phpdoc_name";s:2:"a8";}i:10;a:7:{s:4:"name";s:2:"a9";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:16:"The ninth answer";s:11:"phpdoc_name";s:2:"a9";}i:11;a:7:{s:4:"name";s:3:"a10";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:16:"The tenth answer";s:11:"phpdoc_name";s:3:"a10";}i:12;a:7:{s:4:"name";s:7:"current";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:44:"Whether the poll is/will-be currently active";s:11:"phpdoc_name";s:7:"current";}i:13;a:7:{s:4:"name";s:12:"allow_rating";s:7:"default";i:1;s:11:"default_raw";s:1:"1";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:81:"Whether rating is allowed (null: decide statistically, based on existing choices)";s:11:"phpdoc_name";s:12:"allow_rating";}i:14;a:7:{s:4:"name";s:14:"allow_comments";s:7:"default";i:1;s:11:"default_raw";s:1:"1";s:3:"ref";b:0;s:4:"type";s:14:"?SHORT_INTEGER";s:11:"description";s:114:"Whether comments are allowed (0=no, 1=yes, 2=review style) (null: decide statistically, based on existing choices)";s:11:"phpdoc_name";s:14:"allow_comments";}i:15;a:7:{s:4:"name";s:16:"allow_trackbacks";s:7:"default";i:1;s:11:"default_raw";s:1:"1";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:86:"Whether trackbacks are allowed (null: decide statistically, based on existing choices)";s:11:"phpdoc_name";s:16:"allow_trackbacks";}i:16;a:7:{s:4:"name";s:5:"notes";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:18:"Notes for the poll";s:11:"phpdoc_name";s:5:"notes";}}s:4:"name";s:15:"get_form_fields";s:11:"description";s:44:"Get Tempcode for a poll adding/editing form.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:39:"A pair: The input fields, Hidden fields";}}s:13:"get_submitter";a:6:{s:8:"filename";s:31:"cms/pages/modules/cms_polls.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:43:"The entry for which the submitter is sought";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:13:"get_submitter";s:11:"description";s:38:"Standard crud_module submitter getter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:97:"The submitter, and the time of submission (null submission time implies no known submission time)";}}s:17:"fill_in_edit_form";a:6:{s:8:"filename";s:31:"cms/pages/modules/cms_polls.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:17:"fill_in_edit_form";s:11:"description";s:38:"Standard crud_module edit form filler.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:46:"A quartet: fields, hidden, delete-fields, text";}}s:17:"add_actualisation";a:6:{s:8:"filename";s:31:"cms/pages/modules/cms_polls.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"add_actualisation";s:11:"description";s:36:"Standard crud_module add actualiser.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The entry added";}}s:18:"edit_actualisation";a:5:{s:8:"filename";s:31:"cms/pages/modules/cms_polls.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:18:"edit_actualisation";s:11:"description";s:37:"Standard crud_module edit actualiser.";s:5:"flags";a:0:{}}s:20:"delete_actualisation";a:5:{s:8:"filename";s:31:"cms/pages/modules/cms_polls.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"The entry being deleted";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:20:"delete_actualisation";s:11:"description";s:39:"Standard crud_module delete actualiser.";s:5:"flags";a:0:{}}}s:4:"name";s:16:"Module_cms_polls";s:7:"comment";b:1;}s:15:"Module_cms_quiz";a:3:{s:9:"functions";a:14:{s:23:"get_privilege_overrides";a:6:{s:8:"filename";s:30:"cms/pages/modules/cms_quiz.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"get_privilege_overrides";s:11:"description";s:54:"Find privileges defined as overridable by this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:130:"A map of privileges that are overridable; privilege to 0 or 1. 0 means "not category overridable". 1 means "category overridable".";}}s:16:"get_entry_points";a:6:{s:8:"filename";s:30:"cms/pages/modules/cms_quiz.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:30:"cms/pages/modules/cms_quiz.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:9:"top_level";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:77:"Whether this is running at the top level, prior to having sub-objects called.";s:11:"phpdoc_name";s:9:"top_level";}i:1;a:7:{s:4:"name";s:4:"type";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:80:"The screen type to consider for metadata purposes (null: read from environment).";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:9:"run_start";a:6:{s:8:"filename";s:30:"cms/pages/modules/cms_quiz.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:28:"The type of module execution";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:9:"run_start";s:11:"description";s:31:"Standard crud_module run_start.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:21:"The output of the run";}}s:6:"browse";a:6:{s:8:"filename";s:30:"cms/pages/modules/cms_quiz.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"browse";s:11:"description";s:50:"The do-next manager for before content management.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:34:"create_selection_list_choose_table";a:6:{s:8:"filename";s:30:"cms/pages/modules/cms_quiz.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"url_map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:55:"Details to go to build_url for link to the next screen.";s:11:"phpdoc_name";s:7:"url_map";}}s:4:"name";s:34:"create_selection_list_choose_table";s:11:"description";s:36:"Standard crud_module table function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:104:"A quartet: The choose table, Whether re-ordering is supported from this screen, Search URL, Archive URL.";}}s:29:"create_selection_list_entries";a:6:{s:8:"filename";s:30:"cms/pages/modules/cms_quiz.php";s:10:"parameters";a:0:{}s:4:"name";s:29:"create_selection_list_entries";s:11:"description";s:35:"Standard crud_module list function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:18:"The selection list";}}s:7:"get_cat";a:6:{s:8:"filename";s:30:"cms/pages/modules/cms_quiz.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:37:"The entry for which the cat is sought";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:7:"get_cat";s:11:"description";s:32:"Standard crud_module cat getter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:7:"The cat";}}s:15:"get_form_fields";a:6:{s:8:"filename";s:30:"cms/pages/modules/cms_quiz.php";s:10:"parameters";a:20:{i:0;a:7:{s:4:"name";s:2:"id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:23:"The quiz ID (null: new)";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:4:"name";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:20:"The name of the quiz";s:11:"phpdoc_name";s:4:"name";}i:2;a:7:{s:4:"name";s:7:"timeout";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:55:"The number of minutes allowed for completion (null: NA)";s:11:"phpdoc_name";s:7:"timeout";}i:3;a:7:{s:4:"name";s:10:"start_text";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:39:"The text shown at the start of the quiz";s:11:"phpdoc_name";s:10:"start_text";}i:4;a:7:{s:4:"name";s:8:"end_text";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:37:"The text shown at the end of the quiz";s:11:"phpdoc_name";s:8:"end_text";}i:5;a:7:{s:4:"name";s:13:"end_text_fail";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:48:"The text shown at the end of the quiz on failure";s:11:"phpdoc_name";s:13:"end_text_fail";}i:6;a:7:{s:4:"name";s:5:"notes";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:5:"Notes";s:11:"phpdoc_name";s:5:"notes";}i:7;a:7:{s:4:"name";s:10:"percentage";s:7:"default";i:70;s:11:"default_raw";s:2:"70";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:47:"Percentage correctness required for competition";s:11:"phpdoc_name";s:10:"percentage";}i:8;a:7:{s:4:"name";s:9:"open_time";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:5:"?TIME";s:11:"description";s:39:"The time the quiz is opened (null: now)";s:11:"phpdoc_name";s:9:"open_time";}i:9;a:7:{s:4:"name";s:10:"close_time";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:5:"?TIME";s:11:"description";s:41:"The time the quiz is closed (null: never)";s:11:"phpdoc_name";s:10:"close_time";}i:10;a:7:{s:4:"name";s:11:"num_winners";s:7:"default";i:2;s:11:"default_raw";s:1:"2";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:53:"The number of winners for this if it is a competition";s:11:"phpdoc_name";s:11:"num_winners";}i:11;a:7:{s:4:"name";s:9:"redo_time";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:67:"The minimum number of hours between attempts (null: no restriction)";s:11:"phpdoc_name";s:9:"redo_time";}i:12;a:8:{s:4:"name";s:4:"type";s:7:"default";s:6:"SURVEY";s:11:"default_raw";s:8:"'SURVEY'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:8:"The type";s:11:"phpdoc_name";s:4:"type";s:3:"set";s:23:"SURVEY COMPETITION TEST";}i:13;a:7:{s:4:"name";s:9:"validated";s:7:"default";i:1;s:11:"default_raw";s:1:"1";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:25:"Whether this is validated";s:11:"phpdoc_name";s:9:"validated";}i:14;a:7:{s:4:"name";s:4:"text";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:34:"Text for questions (null: default)";s:11:"phpdoc_name";s:4:"text";}i:15;a:7:{s:4:"name";s:18:"points_for_passing";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:65:"The number of points awarded for completing/passing the quiz/test";s:11:"phpdoc_name";s:18:"points_for_passing";}i:16;a:7:{s:4:"name";s:15:"tied_newsletter";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:62:"Newsletter for which a member must be on to enter (null: none)";s:11:"phpdoc_name";s:15:"tied_newsletter";}i:17;a:7:{s:4:"name";s:14:"reveal_answers";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:112:"Whether to reveal correct answers after the quiz is complete, so that the answerer can learn from the experience";s:11:"phpdoc_name";s:14:"reveal_answers";}i:18;a:7:{s:4:"name";s:17:"shuffle_questions";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:59:"Whether to shuffle questions, to make cheating a bit harder";s:11:"phpdoc_name";s:17:"shuffle_questions";}i:19;a:7:{s:4:"name";s:15:"shuffle_answers";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:73:"Whether to shuffle multiple-choice answers, to make cheating a bit harder";s:11:"phpdoc_name";s:15:"shuffle_answers";}}s:4:"name";s:15:"get_form_fields";s:11:"description";s:39:"Get Tempcode for a adding/editing form.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:39:"A pair: The input fields, Hidden fields";}}s:13:"get_submitter";a:6:{s:8:"filename";s:30:"cms/pages/modules/cms_quiz.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:43:"The entry for which the submitter is sought";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:13:"get_submitter";s:11:"description";s:38:"Standard crud_module submitter getter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:97:"The submitter, and the time of submission (null submission time implies no known submission time)";}}s:17:"fill_in_edit_form";a:6:{s:8:"filename";s:30:"cms/pages/modules/cms_quiz.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:3:"_id";}}s:4:"name";s:17:"fill_in_edit_form";s:11:"description";s:38:"Standard crud_module edit form filler.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:39:"A pair: The input fields, Hidden fields";}}s:17:"add_actualisation";a:6:{s:8:"filename";s:30:"cms/pages/modules/cms_quiz.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"add_actualisation";s:11:"description";s:36:"Standard crud_module add actualiser.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"The ID of the new entry";}}s:18:"edit_actualisation";a:5:{s:8:"filename";s:30:"cms/pages/modules/cms_quiz.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:3:"_id";}}s:4:"name";s:18:"edit_actualisation";s:11:"description";s:37:"Standard crud_module edit actualiser.";s:5:"flags";a:0:{}}s:20:"delete_actualisation";a:5:{s:8:"filename";s:30:"cms/pages/modules/cms_quiz.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"The entry being deleted";s:11:"phpdoc_name";s:3:"_id";}}s:4:"name";s:20:"delete_actualisation";s:11:"description";s:39:"Standard crud_module delete actualiser.";s:5:"flags";a:0:{}}}s:4:"name";s:15:"Module_cms_quiz";s:7:"comment";b:1;}s:15:"Module_cms_wiki";a:3:{s:9:"functions";a:14:{s:4:"info";a:6:{s:8:"filename";s:30:"cms/pages/modules/cms_wiki.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:16:"get_entry_points";a:6:{s:8:"filename";s:30:"cms/pages/modules/cms_wiki.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:23:"get_privilege_overrides";a:6:{s:8:"filename";s:30:"cms/pages/modules/cms_wiki.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"get_privilege_overrides";s:11:"description";s:54:"Find privileges defined as overridable by this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:130:"A map of privileges that are overridable; privilege to 0 or 1. 0 means "not category overridable". 1 means "category overridable".";}}s:7:"pre_run";a:6:{s:8:"filename";s:30:"cms/pages/modules/cms_wiki.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:30:"cms/pages/modules/cms_wiki.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:6:"browse";a:6:{s:8:"filename";s:30:"cms/pages/modules/cms_wiki.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"browse";s:11:"description";s:50:"The do-next manager for before content management.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:15:"get_page_fields";a:6:{s:8:"filename";s:30:"cms/pages/modules/cms_wiki.php";s:10:"parameters";a:5:{i:0;a:7:{s:4:"name";s:2:"id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:23:"The page ID (null: new)";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:5:"title";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:14:"The page title";s:11:"phpdoc_name";s:5:"title";}i:2;a:7:{s:4:"name";s:5:"notes";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:35:"Hidden notes pertaining to the page";s:11:"phpdoc_name";s:5:"notes";}i:3;a:7:{s:4:"name";s:10:"hide_posts";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:48:"Whether to hide the posts on the page by default";s:11:"phpdoc_name";s:10:"hide_posts";}i:4;a:7:{s:4:"name";s:7:"page_id";s:7:"default";i:-1;s:11:"default_raw";s:2:"-1";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:44:"The ID of the page (-1 implies we're adding)";s:11:"phpdoc_name";s:7:"page_id";}}s:4:"name";s:15:"get_page_fields";s:11:"description";s:47:"Get the fields for adding/editing a Wiki+ page.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:48:"The fields, the extra fields, the hidden fields.";}}s:8:"add_page";a:6:{s:8:"filename";s:30:"cms/pages/modules/cms_wiki.php";s:10:"parameters";a:0:{}s:4:"name";s:8:"add_page";s:11:"description";s:31:"The UI for adding a Wiki+ page.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"The UI.";}}s:9:"_add_page";a:6:{s:8:"filename";s:30:"cms/pages/modules/cms_wiki.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"_add_page";s:11:"description";s:39:"The actualiser for adding a Wiki+ page.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"The UI.";}}s:19:"choose_page_to_edit";a:6:{s:8:"filename";s:30:"cms/pages/modules/cms_wiki.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"choose_page_to_edit";s:11:"description";s:61:"The UI for choosing a Wiki+ page to edit (not normally used).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"The UI.";}}s:9:"edit_page";a:6:{s:8:"filename";s:30:"cms/pages/modules/cms_wiki.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"edit_page";s:11:"description";s:32:"The UI for editing a Wiki+ page.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"The UI.";}}s:10:"_edit_page";a:6:{s:8:"filename";s:30:"cms/pages/modules/cms_wiki.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"_edit_page";s:11:"description";s:40:"The actualiser for editing a Wiki+ page.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"The UI.";}}s:9:"edit_tree";a:6:{s:8:"filename";s:30:"cms/pages/modules/cms_wiki.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"edit_tree";s:11:"description";s:49:"The UI for managing the Wiki+ children of a page.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"The UI.";}}s:10:"_edit_tree";a:6:{s:8:"filename";s:30:"cms/pages/modules/cms_wiki.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"_edit_tree";s:11:"description";s:57:"The actualiser for managing the Wiki+ children of a page.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"The UI.";}}}s:4:"name";s:15:"Module_cms_wiki";s:7:"comment";b:1;}s:15:"Module_filedump";a:3:{s:9:"functions";a:15:{s:4:"info";a:6:{s:8:"filename";s:30:"cms/pages/modules/filedump.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:9:"uninstall";a:5:{s:8:"filename";s:30:"cms/pages/modules/filedump.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"uninstall";s:11:"description";s:21:"Uninstall the module.";s:5:"flags";a:0:{}}s:7:"install";a:5:{s:8:"filename";s:30:"cms/pages/modules/filedump.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:12:"upgrade_from";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"What version we're upgrading from (null: new install)";s:11:"phpdoc_name";s:12:"upgrade_from";}i:1;a:7:{s:4:"name";s:17:"upgrade_from_hack";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:94:"What hack version we're upgrading from (null: new-install/not-upgrading-from-a-hacked-version)";s:11:"phpdoc_name";s:17:"upgrade_from_hack";}}s:4:"name";s:7:"install";s:11:"description";s:19:"Install the module.";s:5:"flags";a:0:{}}s:16:"get_entry_points";a:6:{s:8:"filename";s:30:"cms/pages/modules/filedump.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:30:"cms/pages/modules/filedump.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:30:"cms/pages/modules/filedump.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:6:"do_gui";a:6:{s:8:"filename";s:30:"cms/pages/modules/filedump.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"do_gui";s:11:"description";s:42:"The main user interface for the file dump.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"The UI.";}}s:14:"_folder_search";a:6:{s:8:"filename";s:30:"cms/pages/modules/filedump.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:5:"place";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:12:"Folder path.";s:11:"phpdoc_name";s:5:"place";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:19:"Folder description.";s:11:"phpdoc_name";s:11:"description";}i:2;a:5:{s:4:"name";s:6:"search";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"Search filter.";s:11:"phpdoc_name";s:6:"search";}i:3;a:6:{s:4:"name";s:11:"type_filter";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"Type filter.";s:11:"phpdoc_name";s:11:"type_filter";s:3:"set";s:27:"images videos audios others";}i:4;a:7:{s:4:"name";s:9:"recursive";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether to search recursively.";s:11:"phpdoc_name";s:9:"recursive";}}s:4:"name";s:14:"_folder_search";s:11:"description";s:90:"Find whether a file matches the search filter. If there is no filter, anything will match.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether it passes the filter.";}}s:15:"_matches_filter";a:6:{s:8:"filename";s:30:"cms/pages/modules/filedump.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:9:"Filename.";s:11:"phpdoc_name";s:8:"filename";}i:1;a:5:{s:4:"name";s:12:"_description";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:17:"File description.";s:11:"phpdoc_name";s:12:"_description";}i:2;a:5:{s:4:"name";s:6:"search";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"Search filter.";s:11:"phpdoc_name";s:6:"search";}i:3;a:6:{s:4:"name";s:11:"type_filter";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"Type filter.";s:11:"phpdoc_name";s:11:"type_filter";s:3:"set";s:27:"images videos audios others";}}s:4:"name";s:15:"_matches_filter";s:11:"description";s:90:"Find whether a file matches the search filter. If there is no filter, anything will match.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether it passes the filter.";}}s:8:"do_embed";a:6:{s:8:"filename";s:30:"cms/pages/modules/filedump.php";s:10:"parameters";a:0:{}s:4:"name";s:8:"do_embed";s:11:"description";s:42:"The main user interface for the file dump.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"The UI.";}}s:7:"do_mass";a:6:{s:8:"filename";s:30:"cms/pages/modules/filedump.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"do_mass";s:11:"description";s:41:"The actualiser for handling mass actions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"The UI.";}}s:13:"do_add_folder";a:6:{s:8:"filename";s:30:"cms/pages/modules/filedump.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"do_add_folder";s:11:"description";s:35:"The actualiser for adding a folder.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"The UI.";}}s:9:"do_upload";a:6:{s:8:"filename";s:30:"cms/pages/modules/filedump.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"do_upload";s:11:"description";s:36:"The actualiser for uploading a file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"The UI.";}}s:6:"broken";a:6:{s:8:"filename";s:30:"cms/pages/modules/filedump.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"broken";s:11:"description";s:37:"Find URLs referenced that are broken.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"The UI.";}}s:7:"_broken";a:6:{s:8:"filename";s:30:"cms/pages/modules/filedump.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"_broken";s:11:"description";s:36:"Fix URLs referenced that are broken.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"The UI.";}}}s:4:"name";s:15:"Module_filedump";s:7:"comment";b:1;}s:19:"Module_supermembers";a:3:{s:9:"functions";a:5:{s:4:"info";a:6:{s:8:"filename";s:44:"collaboration/pages/modules/supermembers.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:16:"get_entry_points";a:6:{s:8:"filename";s:44:"collaboration/pages/modules/supermembers.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"install";a:5:{s:8:"filename";s:44:"collaboration/pages/modules/supermembers.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:12:"upgrade_from";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"What version we're upgrading from (null: new install)";s:11:"phpdoc_name";s:12:"upgrade_from";}i:1;a:7:{s:4:"name";s:17:"upgrade_from_hack";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:94:"What hack version we're upgrading from (null: new-install/not-upgrading-from-a-hacked-version)";s:11:"phpdoc_name";s:17:"upgrade_from_hack";}}s:4:"name";s:7:"install";s:11:"description";s:19:"Install the module.";s:5:"flags";a:0:{}}s:7:"pre_run";a:6:{s:8:"filename";s:44:"collaboration/pages/modules/supermembers.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:44:"collaboration/pages/modules/supermembers.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:19:"Module_supermembers";s:7:"comment";b:1;}s:16:"Module_forumview";a:3:{s:9:"functions";a:4:{s:4:"info";a:6:{s:8:"filename";s:33:"forum/pages/modules/forumview.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:16:"get_entry_points";a:6:{s:8:"filename";s:33:"forum/pages/modules/forumview.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:33:"forum/pages/modules/forumview.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:33:"forum/pages/modules/forumview.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:16:"Module_forumview";s:7:"comment";b:1;}s:13:"Module_topics";a:3:{s:9:"functions";a:90:{s:4:"info";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:16:"get_entry_points";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:23:"get_privilege_overrides";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"get_privilege_overrides";s:11:"description";s:54:"Find privileges defined as overridable by this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:130:"A map of privileges that are overridable; privilege to 0 or 1. 0 means "not category overridable". 1 means "category overridable".";}}s:7:"pre_run";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:17:"relay_with_reason";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"_title";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:55:"The language string ID for the title to use in the page";s:11:"phpdoc_name";s:6:"_title";}}s:4:"name";s:17:"relay_with_reason";s:11:"description";s:129:"The UI for a trivial form page that just asks a reason before relaying the results to the same URL, but with an underscored type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:11:"redirect_to";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:6:"_title";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:55:"The language string ID for the title to use in the page";s:11:"phpdoc_name";s:6:"_title";}i:1;a:5:{s:4:"name";s:8:"topic_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:34:"The ID of the topic to redirect to";s:11:"phpdoc_name";s:8:"topic_id";}i:2;a:7:{s:4:"name";s:4:"lang";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:6:"?mixed";s:11:"description";s:51:"What to output (Tempcode or string) (null: default)";s:11:"phpdoc_name";s:4:"lang";}i:3;a:7:{s:4:"name";s:7:"post_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:67:"The ID of the post to redirect to (null: redirect to topic instead)";s:11:"phpdoc_name";s:7:"post_id";}}s:4:"name";s:11:"redirect_to";s:11:"description";s:102:"Do a redirection page to a certain topic/post (because we've just done an action and want to go back).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:17:"redirect_to_forum";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:6:"_title";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:55:"The language string ID for the title to use in the page";s:11:"phpdoc_name";s:6:"_title";}i:1;a:5:{s:4:"name";s:8:"forum_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:34:"The ID of the forum to redirect to";s:11:"phpdoc_name";s:8:"forum_id";}i:2;a:7:{s:4:"name";s:4:"lang";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:6:"?mixed";s:11:"description";s:51:"What to output (Tempcode or string) (null: default)";s:11:"phpdoc_name";s:4:"lang";}}s:4:"name";s:17:"redirect_to_forum";s:11:"description";s:97:"Do a redirection page to a certain forum (because we've just done an action and want to go back).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:11:"get_markers";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_markers";s:11:"description";s:58:"Extract marker IDs that were past through in the GET/POST.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"A list of markers";}}s:12:"keep_markers";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"keep_markers";s:11:"description";s:103:"Copy marker IDs that were past through in the GET/POST into hidden form fields, so they may be relayed.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:46:"Hidden fields facilitating the marker relaying";}}s:26:"toggle_notifications_forum";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:26:"toggle_notifications_forum";s:11:"description";s:51:"The actualiser to toggle notifications for a forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:14:"validate_posts";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"validate_posts";s:11:"description";s:38:"The actualiser to validate some posts.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:12:"delete_posts";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"delete_posts";s:11:"description";s:28:"The UI to delete some posts.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:13:"_delete_posts";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"_delete_posts";s:11:"description";s:36:"The actualiser to delete some posts.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:12:"move_posts_a";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"move_posts_a";s:11:"description";s:47:"The UI to move some posts to an existing topic.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:12:"move_posts_b";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"move_posts_b";s:11:"description";s:41:"The UI to move some posts to a new topic.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:11:"_move_posts";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"_move_posts";s:11:"description";s:34:"The actualiser to move some posts.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:16:"mark_topics_read";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"mark_topics_read";s:11:"description";s:38:"The actualiser to mark topics as read.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:21:"cns_ping_topic_unread";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"topic_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:38:"The ID of the topic to mark as unread.";s:11:"phpdoc_name";s:8:"topic_id";}}s:4:"name";s:21:"cns_ping_topic_unread";s:11:"description";s:45:"Mark a topic as unread by the current member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:15:"Success status.";}}s:18:"mark_topics_unread";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"mark_topics_unread";s:11:"description";s:40:"The actualiser to mark topics as unread.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:15:"validate_topics";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"validate_topics";s:11:"description";s:34:"The actualiser to validate topics.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:10:"pin_topics";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"pin_topics";s:11:"description";s:29:"The actualiser to pin topics.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:12:"unpin_topics";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"unpin_topics";s:11:"description";s:31:"The actualiser to unpin topics.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:11:"sink_topics";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"sink_topics";s:11:"description";s:29:"The actualiser to pin topics.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:13:"unsink_topics";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"unsink_topics";s:11:"description";s:31:"The actualiser to unpin topics.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:14:"cascade_topics";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"cascade_topics";s:11:"description";s:33:"The actualiser to cascade topics.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:16:"uncascade_topics";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"uncascade_topics";s:11:"description";s:35:"The actualiser to uncascade topics.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:11:"open_topics";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"open_topics";s:11:"description";s:30:"The actualiser to open topics.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:12:"close_topics";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"close_topics";s:11:"description";s:31:"The actualiser to close topics.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:13:"mass_multimod";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"mass_multimod";s:11:"description";s:32:"The UI to run multi-moderations.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:14:"_mass_multimod";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"_mass_multimod";s:11:"description";s:40:"The actualiser to run multi moderations.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:11:"move_topics";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"move_topics";s:11:"description";s:27:"The UI to move some topics.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:12:"_move_topics";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"_move_topics";s:11:"description";s:35:"The actualiser to move some topics.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:13:"delete_topics";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"delete_topics";s:11:"description";s:29:"The UI to delete some topics.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:14:"_delete_topics";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"_delete_topics";s:11:"description";s:37:"The actualiser to delete some topics.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:23:"delete_topics_and_posts";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"delete_topics_and_posts";s:11:"description";s:37:"The UI to delete some topics / posts.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:24:"_delete_topics_and_posts";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"_delete_topics_and_posts";s:11:"description";s:45:"The actualiser to delete some topics / posts.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:14:"categorise_pts";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"categorise_pts";s:11:"description";s:30:"The UI to categorise some PTs.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:15:"_categorise_pts";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"_categorise_pts";s:11:"description";s:38:"The actualiser to categorise some PTs.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:7:"whisper";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"whisper";s:11:"description";s:50:"The UI to choose between the two types of whisper.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:21:"choose_topic_emoticon";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:13:"selected_path";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:31:"The currently selected emoticon";s:11:"phpdoc_name";s:13:"selected_path";}}s:4:"name";s:21:"choose_topic_emoticon";s:11:"description";s:31:"Choose an emoticon for a topic.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The emoticon input field";}}s:13:"attach_quotes";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"quotes";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:24:"A list of posts to quote";s:11:"phpdoc_name";s:6:"quotes";}}s:4:"name";s:13:"attach_quotes";s:11:"description";s:78:"Create a default post based on a template of quoting the given list of quotes.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:16:"The default post";}}s:14:"post_templates";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"forum_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:56:"The forum ID we are looking for post templates active in";s:11:"phpdoc_name";s:8:"forum_id";}}s:4:"name";s:14:"post_templates";s:11:"description";s:46:"The form element for choosing a post template.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:64:"A pair: The form element (Tempcode) and the default post to make";}}s:9:"new_topic";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:13:"private_topic";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:44:"Whether a new Private Topic is being created";s:11:"phpdoc_name";s:13:"private_topic";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:45:"The member ID being whispered too (null: N/A)";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:8:"img_path";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:16:"Theme image code";s:11:"phpdoc_name";s:8:"img_path";}i:3;a:7:{s:4:"name";s:4:"text";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:9:"?Tempcode";s:11:"description";s:27:"Text of screen (null: none)";s:11:"phpdoc_name";s:4:"text";}}s:4:"name";s:9:"new_topic";s:11:"description";s:29:"The UI to create a new topic.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:6:"new_pt";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"new_pt";s:11:"description";s:22:"The UI to create a PT.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:24:"handle_topic_breadcrumbs";a:5:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"forum_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:27:"The forum for breadcrumbing";s:11:"phpdoc_name";s:8:"forum_id";}i:1;a:5:{s:4:"name";s:8:"topic_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:27:"The topic for breadcrumbing";s:11:"phpdoc_name";s:8:"topic_id";}i:2;a:5:{s:4:"name";s:11:"topic_title";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:15:"The topic title";s:11:"phpdoc_name";s:11:"topic_title";}i:3;a:5:{s:4:"name";s:5:"doing";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:31:"The action currently being done";s:11:"phpdoc_name";s:5:"doing";}}s:4:"name";s:24:"handle_topic_breadcrumbs";s:11:"description";s:64:"Sort out breadcrumbing for a forum/topic/additional combination.";s:5:"flags";a:0:{}}s:8:"new_post";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:8:"new_post";s:11:"description";s:22:"The UI to make a post.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:11:"report_post";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"report_post";s:11:"description";s:24:"The UI to report a post.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:10:"_add_reply";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"_add_reply";s:11:"description";s:30:"The actualiser to add a reply.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:26:"toggle_notifications_topic";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:26:"toggle_notifications_topic";s:11:"description";s:51:"The actualiser to toggle notifications for a topic.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:15:"mark_read_topic";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"mark_read_topic";s:11:"description";s:39:"The actualiser to mark a topic as read.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:17:"mark_unread_topic";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"mark_unread_topic";s:11:"description";s:41:"The actualiser to mark a topic as unread.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:11:"delete_post";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"delete_post";s:11:"description";s:44:"The UI to grab a reason for deleting a post.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:12:"_delete_post";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"_delete_post";s:11:"description";s:35:"The actualiser for deleting a post.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:9:"vote_poll";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"vote_poll";s:11:"description";s:33:"The actualiser to vote in a poll.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:20:"get_poll_form_fields";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:7:{i:0;a:7:{s:4:"name";s:8:"question";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:17:"The poll question";s:11:"phpdoc_name";s:8:"question";}i:1;a:7:{s:4:"name";s:7:"answers";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:55:"A list of current answers for the poll (null: none yet)";s:11:"phpdoc_name";s:7:"answers";}i:2;a:7:{s:4:"name";s:10:"is_private";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:93:"Whether it is a private poll (blind poll, where the results aren't visible until made public)";s:11:"phpdoc_name";s:10:"is_private";}i:3;a:7:{s:4:"name";s:7:"is_open";s:7:"default";i:1;s:11:"default_raw";s:1:"1";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:35:"Whether the poll is open for voting";s:11:"phpdoc_name";s:7:"is_open";}i:4;a:7:{s:4:"name";s:14:"requires_reply";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:59:"Whether a reply to the poll topic is required before voting";s:11:"phpdoc_name";s:14:"requires_reply";}i:5;a:7:{s:4:"name";s:18:"minimum_selections";s:7:"default";i:1;s:11:"default_raw";s:1:"1";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:43:"The minimum number of selections for voters";s:11:"phpdoc_name";s:18:"minimum_selections";}i:6;a:7:{s:4:"name";s:18:"maximum_selections";s:7:"default";i:1;s:11:"default_raw";s:1:"1";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:43:"The maximum number of selections for voters";s:11:"phpdoc_name";s:18:"maximum_selections";}}s:4:"name";s:20:"get_poll_form_fields";s:11:"description";s:44:"Get Tempcode for a poll adding/editing form.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:27:"The Tempcode for the fields";}}s:8:"add_poll";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:8:"topic_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:94:"The topic ID to add the poll to (null: it is instead gettable from a GET parameter named 'id')";s:11:"phpdoc_name";s:8:"topic_id";}}s:4:"name";s:8:"add_poll";s:11:"description";s:21:"The UI to add a poll.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:9:"_add_poll";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"_add_poll";s:11:"description";s:29:"The actualiser to add a poll.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:9:"edit_post";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"edit_post";s:11:"description";s:22:"The UI to edit a post.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:16:"_post_javascript";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"_post_javascript";s:11:"description";s:40:"Get JavaScript to restrict post lengths.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:19:"The post JavaScript";}}s:10:"_edit_post";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"_edit_post";s:11:"description";s:30:"The actualiser to edit a post.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:13:"validate_post";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"validate_post";s:11:"description";s:34:"The actualiser to validate a post.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:20:"check_has_mod_access";a:5:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"topic_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:12:"The topic ID";s:11:"phpdoc_name";s:8:"topic_id";}}s:4:"name";s:20:"check_has_mod_access";s:11:"description";s:68:"Check there is at least some moderation access over the given topic.";s:5:"flags";a:0:{}}s:10:"edit_topic";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"edit_topic";s:11:"description";s:23:"The UI to edit a topic.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:11:"_edit_topic";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"_edit_topic";s:11:"description";s:31:"The actualiser to edit a topic.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:12:"delete_topic";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"delete_topic";s:11:"description";s:25:"The UI to delete a topic.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:13:"_delete_topic";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"_delete_topic";s:11:"description";s:33:"The actualiser to delete a topic.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:13:"invite_member";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"invite_member";s:11:"description";s:34:"The UI to invite a member to a PT.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:14:"_invite_member";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"_invite_member";s:11:"description";s:42:"The actualiser to invite a member to a PT.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:9:"edit_poll";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"edit_poll";s:11:"description";s:22:"The UI to edit a poll.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:10:"_edit_poll";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"_edit_poll";s:11:"description";s:30:"The actualiser to edit a poll.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:11:"delete_poll";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"delete_poll";s:11:"description";s:44:"The UI to grab a reason for deleting a poll.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:12:"_delete_poll";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"_delete_poll";s:11:"description";s:32:"The actualiser to delete a poll.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:10:"move_topic";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"move_topic";s:11:"description";s:23:"The UI to move a topic.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:11:"_move_topic";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"_move_topic";s:11:"description";s:31:"The actualiser to move a topic.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:9:"pin_topic";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"pin_topic";s:11:"description";s:30:"The actualiser to pin a topic.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:11:"unpin_topic";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"unpin_topic";s:11:"description";s:32:"The actualiser to unpin a topic.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:10:"sink_topic";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"sink_topic";s:11:"description";s:30:"The actualiser to pin a topic.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:12:"unsink_topic";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"unsink_topic";s:11:"description";s:32:"The actualiser to unpin a topic.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:13:"cascade_topic";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"cascade_topic";s:11:"description";s:34:"The actualiser to cascade a topic.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:15:"uncascade_topic";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"uncascade_topic";s:11:"description";s:36:"The actualiser to uncascade a topic.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:10:"open_topic";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"open_topic";s:11:"description";s:31:"The actualiser to open a topic.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:11:"close_topic";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"close_topic";s:11:"description";s:32:"The actualiser to close a topic.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:8:"multimod";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:8:"multimod";s:11:"description";s:33:"The UI to run a multi-moderation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:9:"_multimod";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"_multimod";s:11:"description";s:41:"The actualiser to run a multi moderation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:13:"topic_history";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"topic_history";s:11:"description";s:139:"A redirect for viewing post history: made like this so the history button can fit into the same URL architecture as the other post buttons.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:9:"mark_read";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"mark_read";s:11:"description";s:39:"The actualiser to mark a forum as read.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:12:"make_private";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"make_private";s:11:"description";s:46:"The UI to make a normal topic a Private Topic.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:13:"_make_private";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"_make_private";s:11:"description";s:54:"The actualiser to make a normal topic a Private Topic.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:8:"birthday";a:6:{s:8:"filename";s:30:"forum/pages/modules/topics.php";s:10:"parameters";a:0:{}s:4:"name";s:8:"birthday";s:11:"description";s:95:"Redirect to a screen suitable for celebrating a members birthday (existing topic, if possible).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:13:"Module_topics";s:7:"comment";b:1;}s:16:"Module_topicview";a:3:{s:9:"functions";a:5:{s:4:"info";a:6:{s:8:"filename";s:33:"forum/pages/modules/topicview.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:16:"get_entry_points";a:6:{s:8:"filename";s:33:"forum/pages/modules/topicview.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:33:"forum/pages/modules/topicview.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:33:"forum/pages/modules/topicview.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:19:"_update_read_status";a:5:{s:8:"filename";s:33:"forum/pages/modules/topicview.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"_update_read_status";s:11:"description";s:35:"Update the read status for a topic.";s:5:"flags";a:0:{}}}s:4:"name";s:16:"Module_topicview";s:7:"comment";b:1;}s:14:"Module_vforums";a:3:{s:9:"functions";a:10:{s:4:"info";a:6:{s:8:"filename";s:31:"forum/pages/modules/vforums.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:16:"get_entry_points";a:6:{s:8:"filename";s:31:"forum/pages/modules/vforums.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:31:"forum/pages/modules/vforums.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:31:"forum/pages/modules/vforums.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:9:"new_posts";a:6:{s:8:"filename";s:31:"forum/pages/modules/vforums.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"new_posts";s:11:"description";s:59:"The UI to show topics with new posts since last visit time.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:17:"unanswered_topics";a:6:{s:8:"filename";s:31:"forum/pages/modules/vforums.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"unanswered_topics";s:11:"description";s:33:"The UI to show unanswered topics.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:15:"involved_topics";a:6:{s:8:"filename";s:31:"forum/pages/modules/vforums.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"involved_topics";s:11:"description";s:43:"The UI to show topics you're involved with.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:13:"unread_topics";a:6:{s:8:"filename";s:31:"forum/pages/modules/vforums.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"unread_topics";s:11:"description";s:40:"The UI to show topics with unread posts.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:13:"recently_read";a:6:{s:8:"filename";s:31:"forum/pages/modules/vforums.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"recently_read";s:11:"description";s:74:"The UI to show topics which have been recently read by the current member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:7:"_vforum";a:6:{s:8:"filename";s:31:"forum/pages/modules/vforums.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:33:"The title to show for the v-forum";s:11:"phpdoc_name";s:5:"title";}i:1;a:5:{s:4:"name";s:9:"condition";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:229:"The condition (a fragment of an SQL query that gets embedded in the context of a topic selection query). May be string, or array of strings (separate queries to run and merge; done for performance reasons relating to DB indexing)";s:11:"phpdoc_name";s:9:"condition";}i:2;a:5:{s:4:"name";s:5:"order";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:27:"The ordering of the results";s:11:"phpdoc_name";s:5:"order";}i:3;a:7:{s:4:"name";s:6:"no_pin";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether to not show pinning in a separate section";s:11:"phpdoc_name";s:6:"no_pin";}i:4;a:7:{s:4:"name";s:13:"extra_tpl_map";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:54:"Extra template parameters to pass through (null: none)";s:11:"phpdoc_name";s:13:"extra_tpl_map";}i:5;a:7:{s:4:"name";s:13:"initial_table";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:38:"The table to query (null: topic table)";s:11:"phpdoc_name";s:13:"initial_table";}i:6;a:7:{s:4:"name";s:12:"extra_select";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:27:"Extra SQL for select clause";s:11:"phpdoc_name";s:12:"extra_select";}}s:4:"name";s:7:"_vforum";s:11:"description";s:31:"The UI to show a virtual forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:14:"Module_vforums";s:7:"comment";b:1;}s:13:"Module_forums";a:3:{s:9:"functions";a:4:{s:4:"info";a:6:{s:8:"filename";s:24:"pages/modules/forums.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:16:"get_entry_points";a:6:{s:8:"filename";s:24:"pages/modules/forums.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:24:"pages/modules/forums.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:24:"pages/modules/forums.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:13:"Module_forums";s:7:"comment";b:1;}s:11:"Module_join";a:3:{s:9:"functions";a:8:{s:4:"info";a:6:{s:8:"filename";s:22:"pages/modules/join.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:16:"get_entry_points";a:6:{s:8:"filename";s:22:"pages/modules/join.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:22:"pages/modules/join.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:22:"pages/modules/join.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:5:"step1";a:6:{s:8:"filename";s:22:"pages/modules/join.php";s:10:"parameters";a:0:{}s:4:"name";s:5:"step1";s:11:"description";s:38:"The UI to accept the rules of joining.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:5:"step2";a:6:{s:8:"filename";s:22:"pages/modules/join.php";s:10:"parameters";a:0:{}s:4:"name";s:5:"step2";s:11:"description";s:32:"The UI to enter profile details.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:5:"step3";a:6:{s:8:"filename";s:22:"pages/modules/join.php";s:10:"parameters";a:0:{}s:4:"name";s:5:"step3";s:11:"description";s:35:"The actualiser for adding a member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:5:"step4";a:6:{s:8:"filename";s:22:"pages/modules/join.php";s:10:"parameters";a:0:{}s:4:"name";s:5:"step4";s:11:"description";s:51:"The actualiser for setting up account confirmation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:11:"Module_join";s:7:"comment";b:1;}s:12:"Module_login";a:3:{s:9:"functions";a:11:{s:4:"info";a:6:{s:8:"filename";s:23:"pages/modules/login.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:9:"uninstall";a:5:{s:8:"filename";s:23:"pages/modules/login.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"uninstall";s:11:"description";s:21:"Uninstall the module.";s:5:"flags";a:0:{}}s:7:"install";a:5:{s:8:"filename";s:23:"pages/modules/login.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:12:"upgrade_from";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"What version we're upgrading from (null: new install)";s:11:"phpdoc_name";s:12:"upgrade_from";}i:1;a:7:{s:4:"name";s:17:"upgrade_from_hack";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:94:"What hack version we're upgrading from (null: new-install/not-upgrading-from-a-hacked-version)";s:11:"phpdoc_name";s:17:"upgrade_from_hack";}}s:4:"name";s:7:"install";s:11:"description";s:19:"Install the module.";s:5:"flags";a:0:{}}s:16:"get_entry_points";a:6:{s:8:"filename";s:23:"pages/modules/login.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:23:"pages/modules/login.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:23:"pages/modules/login.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:12:"login_before";a:6:{s:8:"filename";s:23:"pages/modules/login.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"login_before";s:11:"description";s:22:"The UI for logging in.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"The UI.";}}s:11:"login_after";a:6:{s:8:"filename";s:23:"pages/modules/login.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"login_after";s:11:"description";s:30:"The actualiser for logging in.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"The UI.";}}s:6:"logout";a:6:{s:8:"filename";s:23:"pages/modules/login.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"logout";s:11:"description";s:31:"The actualiser for logging out.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"The UI.";}}s:7:"concede";a:6:{s:8:"filename";s:23:"pages/modules/login.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"concede";s:11:"description";s:42:"The actualiser for entering conceded mode.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"The UI.";}}s:9:"invisible";a:6:{s:8:"filename";s:23:"pages/modules/login.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"invisible";s:11:"description";s:43:"The actualiser for toggling invisible mode.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"The UI.";}}}s:4:"name";s:12:"Module_login";s:7:"comment";b:1;}s:20:"Module_lost_password";a:3:{s:9:"functions";a:7:{s:4:"info";a:6:{s:8:"filename";s:31:"pages/modules/lost_password.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:31:"pages/modules/lost_password.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:31:"pages/modules/lost_password.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:16:"get_entry_points";a:6:{s:8:"filename";s:31:"pages/modules/lost_password.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:5:"step1";a:6:{s:8:"filename";s:31:"pages/modules/lost_password.php";s:10:"parameters";a:0:{}s:4:"name";s:5:"step1";s:11:"description";s:60:"The UI to ask for the username to get the lost password for.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:5:"step2";a:6:{s:8:"filename";s:31:"pages/modules/lost_password.php";s:10:"parameters";a:0:{}s:4:"name";s:5:"step2";s:11:"description";s:59:"The UI and actualisation for sending out the confirm email.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:5:"step3";a:6:{s:8:"filename";s:31:"pages/modules/lost_password.php";s:10:"parameters";a:0:{}s:4:"name";s:5:"step3";s:11:"description";s:129:"The UI and actualisation for: accepting code if it is correct (and not ''), and setting password to something random, emailing it";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:20:"Module_lost_password";s:7:"comment";b:1;}s:16:"Module_recommend";a:3:{s:9:"functions";a:9:{s:4:"info";a:6:{s:8:"filename";s:27:"pages/modules/recommend.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:9:"uninstall";a:5:{s:8:"filename";s:27:"pages/modules/recommend.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"uninstall";s:11:"description";s:21:"Uninstall the module.";s:5:"flags";a:0:{}}s:7:"install";a:5:{s:8:"filename";s:27:"pages/modules/recommend.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:12:"upgrade_from";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"What version we're upgrading from (null: new install)";s:11:"phpdoc_name";s:12:"upgrade_from";}i:1;a:7:{s:4:"name";s:17:"upgrade_from_hack";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:94:"What hack version we're upgrading from (null: new-install/not-upgrading-from-a-hacked-version)";s:11:"phpdoc_name";s:17:"upgrade_from_hack";}}s:4:"name";s:7:"install";s:11:"description";s:19:"Install the module.";s:5:"flags";a:0:{}}s:16:"get_entry_points";a:6:{s:8:"filename";s:27:"pages/modules/recommend.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:27:"pages/modules/recommend.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:27:"pages/modules/recommend.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:3:"gui";a:6:{s:8:"filename";s:27:"pages/modules/recommend.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"gui";s:11:"description";s:33:"The UI for recommending the site.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"The UI.";}}s:4:"gui2";a:6:{s:8:"filename";s:27:"pages/modules/recommend.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"gui2";s:11:"description";s:78:"The UI for the second stage of recommending the site - when CSV file is posted";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"The UI.";}}s:6:"actual";a:6:{s:8:"filename";s:27:"pages/modules/recommend.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"actual";s:11:"description";s:41:"The actualiser for recommending the site.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"The UI.";}}}s:4:"name";s:16:"Module_recommend";s:7:"comment";b:1;}s:14:"Module_authors";a:3:{s:9:"functions";a:7:{s:4:"info";a:6:{s:8:"filename";s:30:"site/pages/modules/authors.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:9:"uninstall";a:5:{s:8:"filename";s:30:"site/pages/modules/authors.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"uninstall";s:11:"description";s:21:"Uninstall the module.";s:5:"flags";a:0:{}}s:7:"install";a:5:{s:8:"filename";s:30:"site/pages/modules/authors.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:12:"upgrade_from";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"What version we're upgrading from (null: new install)";s:11:"phpdoc_name";s:12:"upgrade_from";}i:1;a:7:{s:4:"name";s:17:"upgrade_from_hack";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:94:"What hack version we're upgrading from (null: new-install/not-upgrading-from-a-hacked-version)";s:11:"phpdoc_name";s:17:"upgrade_from_hack";}}s:4:"name";s:7:"install";s:11:"description";s:19:"Install the module.";s:5:"flags";a:0:{}}s:16:"get_entry_points";a:6:{s:8:"filename";s:30:"site/pages/modules/authors.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:30:"site/pages/modules/authors.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:30:"site/pages/modules/authors.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:11:"show_author";a:6:{s:8:"filename";s:30:"site/pages/modules/authors.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"show_author";s:11:"description";s:25:"The UI to view an author.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:14:"Module_authors";s:7:"comment";b:1;}s:13:"Module_awards";a:3:{s:9:"functions";a:7:{s:4:"info";a:6:{s:8:"filename";s:29:"site/pages/modules/awards.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:16:"get_entry_points";a:6:{s:8:"filename";s:29:"site/pages/modules/awards.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:29:"site/pages/modules/awards.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:29:"site/pages/modules/awards.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:12:"choose_award";a:6:{s:8:"filename";s:29:"site/pages/modules/awards.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"choose_award";s:11:"description";s:39:"The UI to choose an award type to view.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:14:"award_overview";a:6:{s:8:"filename";s:29:"site/pages/modules/awards.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"award_overview";s:11:"description";s:61:"The UI to view the overview of all current award allocations.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:5:"award";a:6:{s:8:"filename";s:29:"site/pages/modules/awards.php";s:10:"parameters";a:0:{}s:4:"name";s:5:"award";s:11:"description";s:45:"The UI to view the archive for an award type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:13:"Module_awards";s:7:"comment";b:1;}s:14:"Module_banners";a:3:{s:9:"functions";a:9:{s:4:"info";a:6:{s:8:"filename";s:30:"site/pages/modules/banners.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:9:"uninstall";a:5:{s:8:"filename";s:30:"site/pages/modules/banners.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"uninstall";s:11:"description";s:21:"Uninstall the module.";s:5:"flags";a:0:{}}s:7:"install";a:5:{s:8:"filename";s:30:"site/pages/modules/banners.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:12:"upgrade_from";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"What version we're upgrading from (null: new install)";s:11:"phpdoc_name";s:12:"upgrade_from";}i:1;a:7:{s:4:"name";s:17:"upgrade_from_hack";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:94:"What hack version we're upgrading from (null: new-install/not-upgrading-from-a-hacked-version)";s:11:"phpdoc_name";s:17:"upgrade_from_hack";}}s:4:"name";s:7:"install";s:11:"description";s:19:"Install the module.";s:5:"flags";a:0:{}}s:16:"get_entry_points";a:6:{s:8:"filename";s:30:"site/pages/modules/banners.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:30:"site/pages/modules/banners.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:30:"site/pages/modules/banners.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:13:"choose_banner";a:6:{s:8:"filename";s:30:"site/pages/modules/banners.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"choose_banner";s:11:"description";s:34:"The UI to choose a banner to view.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:11:"view_banner";a:6:{s:8:"filename";s:30:"site/pages/modules/banners.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"view_banner";s:11:"description";s:24:"The UI to view a banner.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:12:"reset_banner";a:6:{s:8:"filename";s:30:"site/pages/modules/banners.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"reset_banner";s:11:"description";s:33:"The actualiser to reset a banner.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:14:"Module_banners";s:7:"comment";b:1;}s:16:"Module_bookmarks";a:3:{s:9:"functions";a:11:{s:4:"info";a:6:{s:8:"filename";s:32:"site/pages/modules/bookmarks.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:9:"uninstall";a:5:{s:8:"filename";s:32:"site/pages/modules/bookmarks.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"uninstall";s:11:"description";s:21:"Uninstall the module.";s:5:"flags";a:0:{}}s:7:"install";a:5:{s:8:"filename";s:32:"site/pages/modules/bookmarks.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:12:"upgrade_from";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"What version we're upgrading from (null: new install)";s:11:"phpdoc_name";s:12:"upgrade_from";}i:1;a:7:{s:4:"name";s:17:"upgrade_from_hack";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:94:"What hack version we're upgrading from (null: new-install/not-upgrading-from-a-hacked-version)";s:11:"phpdoc_name";s:17:"upgrade_from_hack";}}s:4:"name";s:7:"install";s:11:"description";s:19:"Install the module.";s:5:"flags";a:0:{}}s:16:"get_entry_points";a:6:{s:8:"filename";s:32:"site/pages/modules/bookmarks.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:32:"site/pages/modules/bookmarks.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:32:"site/pages/modules/bookmarks.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:16:"manage_bookmarks";a:6:{s:8:"filename";s:32:"site/pages/modules/bookmarks.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"manage_bookmarks";s:11:"description";s:27:"The UI to manage bookmarks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:17:"_manage_bookmarks";a:6:{s:8:"filename";s:32:"site/pages/modules/bookmarks.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"_manage_bookmarks";s:11:"description";s:35:"The actualiser to manage bookmarks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:3:"add";a:6:{s:8:"filename";s:32:"site/pages/modules/bookmarks.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"add";s:11:"description";s:25:"The UI to add a bookmark.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:4:"_add";a:6:{s:8:"filename";s:32:"site/pages/modules/bookmarks.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"_add";s:11:"description";s:33:"The actualiser to add a bookmark.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:14:"_edit_bookmark";a:6:{s:8:"filename";s:32:"site/pages/modules/bookmarks.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"_edit_bookmark";s:11:"description";s:34:"The actualiser to edit a bookmark.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:16:"Module_bookmarks";s:7:"comment";b:1;}s:15:"Module_calendar";a:3:{s:9:"functions";a:20:{s:4:"info";a:6:{s:8:"filename";s:31:"site/pages/modules/calendar.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:9:"uninstall";a:5:{s:8:"filename";s:31:"site/pages/modules/calendar.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"uninstall";s:11:"description";s:21:"Uninstall the module.";s:5:"flags";a:0:{}}s:7:"install";a:5:{s:8:"filename";s:31:"site/pages/modules/calendar.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:12:"upgrade_from";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"What version we're upgrading from (null: new install)";s:11:"phpdoc_name";s:12:"upgrade_from";}i:1;a:7:{s:4:"name";s:17:"upgrade_from_hack";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:94:"What hack version we're upgrading from (null: new-install/not-upgrading-from-a-hacked-version)";s:11:"phpdoc_name";s:17:"upgrade_from_hack";}}s:4:"name";s:7:"install";s:11:"description";s:19:"Install the module.";s:5:"flags";a:0:{}}s:16:"get_entry_points";a:6:{s:8:"filename";s:31:"site/pages/modules/calendar.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:31:"site/pages/modules/calendar.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:31:"site/pages/modules/calendar.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:10:"get_filter";a:6:{s:8:"filename";s:31:"site/pages/modules/calendar.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:16:"only_event_types";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:32:"Whether to only show event types";s:11:"phpdoc_name";s:16:"only_event_types";}}s:4:"name";s:10:"get_filter";s:11:"description";s:39:"Gets the event filter, if there is one.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:10:"The filter";}}s:14:"get_and_filter";a:6:{s:8:"filename";s:31:"site/pages/modules/calendar.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:16:"only_event_types";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:32:"Whether to only show event types";s:11:"phpdoc_name";s:16:"only_event_types";}}s:4:"name";s:14:"get_and_filter";s:11:"description";s:44:"Gets the event filter in a simple list form.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:10:"The filter";}}s:13:"view_calendar";a:6:{s:8:"filename";s:31:"site/pages/modules/calendar.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"view_calendar";s:11:"description";s:62:"View the main calendar screen, with certain filter allowances.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:22:"view_calendar_view_day";a:6:{s:8:"filename";s:31:"site/pages/modules/calendar.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:7:"view_id";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:22:"The day we are viewing";s:11:"phpdoc_name";s:7:"view_id";}i:1;a:5:{s:4:"name";s:3:"day";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:30:"The day (Y-m-d) we are viewing";s:11:"phpdoc_name";s:3:"day";}i:2;a:5:{s:4:"name";s:7:"explode";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:35:"List of components of our viewed ID";s:11:"phpdoc_name";s:7:"explode";}i:3;a:5:{s:4:"name";s:9:"member_id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:45:"The member ID we are viewing the calendar for";s:11:"phpdoc_name";s:9:"member_id";}i:4;a:5:{s:4:"name";s:6:"filter";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:28:"The type filter (null: none)";s:11:"phpdoc_name";s:6:"filter";}}s:4:"name";s:22:"view_calendar_view_day";s:11:"description";s:48:"The calendar area view for viewing a single day.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:23:"view_calendar_view_week";a:6:{s:8:"filename";s:31:"site/pages/modules/calendar.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:7:"view_id";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"The week we are viewing";s:11:"phpdoc_name";s:7:"view_id";}i:1;a:5:{s:4:"name";s:3:"day";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:30:"The day (Y-m-d) we are viewing";s:11:"phpdoc_name";s:3:"day";}i:2;a:5:{s:4:"name";s:7:"explode";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:35:"List of components of our viewed ID";s:11:"phpdoc_name";s:7:"explode";}i:3;a:5:{s:4:"name";s:9:"member_id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:45:"The member ID we are viewing the calendar for";s:11:"phpdoc_name";s:9:"member_id";}i:4;a:5:{s:4:"name";s:6:"filter";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:28:"The type filter (null: none)";s:11:"phpdoc_name";s:6:"filter";}}s:4:"name";s:23:"view_calendar_view_week";s:11:"description";s:49:"The calendar area view for viewing a single week.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:24:"view_calendar_view_month";a:6:{s:8:"filename";s:31:"site/pages/modules/calendar.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:7:"view_id";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:24:"The month we are viewing";s:11:"phpdoc_name";s:7:"view_id";}i:1;a:5:{s:4:"name";s:3:"day";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:30:"The day (Y-m-d) we are viewing";s:11:"phpdoc_name";s:3:"day";}i:2;a:5:{s:4:"name";s:7:"explode";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:35:"List of components of our viewed ID";s:11:"phpdoc_name";s:7:"explode";}i:3;a:5:{s:4:"name";s:9:"member_id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:45:"The member ID we are viewing the calendar for";s:11:"phpdoc_name";s:9:"member_id";}i:4;a:5:{s:4:"name";s:6:"filter";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:28:"The type filter (null: none)";s:11:"phpdoc_name";s:6:"filter";}}s:4:"name";s:24:"view_calendar_view_month";s:11:"description";s:50:"The calendar area view for viewing a single month.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:23:"view_calendar_view_year";a:6:{s:8:"filename";s:31:"site/pages/modules/calendar.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:7:"view_id";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"The year we are viewing";s:11:"phpdoc_name";s:7:"view_id";}i:1;a:5:{s:4:"name";s:3:"day";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:30:"The day (Y-m-d) we are viewing";s:11:"phpdoc_name";s:3:"day";}i:2;a:5:{s:4:"name";s:7:"explode";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:35:"List of components of our viewed ID";s:11:"phpdoc_name";s:7:"explode";}i:3;a:5:{s:4:"name";s:9:"member_id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:45:"The member ID we are viewing the calendar for";s:11:"phpdoc_name";s:9:"member_id";}i:4;a:5:{s:4:"name";s:6:"filter";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:28:"The type filter (null: none)";s:11:"phpdoc_name";s:6:"filter";}}s:4:"name";s:23:"view_calendar_view_year";s:11:"description";s:49:"The calendar area view for viewing a single year.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:10:"view_event";a:6:{s:8:"filename";s:31:"site/pages/modules/calendar.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"view_event";s:11:"description";s:14:"View an event.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:15:"subscribe_event";a:6:{s:8:"filename";s:31:"site/pages/modules/calendar.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"subscribe_event";s:11:"description";s:49:"Interface to subscribe for reminders to an event.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:16:"_subscribe_event";a:6:{s:8:"filename";s:31:"site/pages/modules/calendar.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"_subscribe_event";s:11:"description";s:36:"Subscribe for reminders to an event.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:17:"unsubscribe_event";a:6:{s:8:"filename";s:31:"site/pages/modules/calendar.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"unsubscribe_event";s:11:"description";s:38:"Unsubscribe for reminders to an event.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:9:"interests";a:6:{s:8:"filename";s:31:"site/pages/modules/calendar.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"interests";s:11:"description";s:34:"Declare interests for event types.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:16:"declare_interest";a:6:{s:8:"filename";s:31:"site/pages/modules/calendar.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"declare_interest";s:11:"description";s:34:"Declare interest to an event type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:18:"undeclare_interest";a:6:{s:8:"filename";s:31:"site/pages/modules/calendar.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"undeclare_interest";s:11:"description";s:36:"Undeclare interest to an event type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:15:"Module_calendar";s:7:"comment";b:1;}s:17:"Module_catalogues";a:3:{s:9:"functions";a:11:{s:4:"info";a:6:{s:8:"filename";s:33:"site/pages/modules/catalogues.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:9:"uninstall";a:5:{s:8:"filename";s:33:"site/pages/modules/catalogues.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"uninstall";s:11:"description";s:21:"Uninstall the module.";s:5:"flags";a:0:{}}s:7:"install";a:5:{s:8:"filename";s:33:"site/pages/modules/catalogues.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:12:"upgrade_from";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"What version we're upgrading from (null: new install)";s:11:"phpdoc_name";s:12:"upgrade_from";}i:1;a:7:{s:4:"name";s:17:"upgrade_from_hack";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:94:"What hack version we're upgrading from (null: new-install/not-upgrading-from-a-hacked-version)";s:11:"phpdoc_name";s:17:"upgrade_from_hack";}}s:4:"name";s:7:"install";s:11:"description";s:19:"Install the module.";s:5:"flags";a:0:{}}s:16:"get_entry_points";a:6:{s:8:"filename";s:33:"site/pages/modules/catalogues.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:33:"site/pages/modules/catalogues.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:33:"site/pages/modules/catalogues.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:15:"list_catalogues";a:6:{s:8:"filename";s:33:"site/pages/modules/catalogues.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"list_catalogues";s:11:"description";s:51:"The UI to show a list of catalogues to choose from.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:20:"view_catalogue_index";a:6:{s:8:"filename";s:33:"site/pages/modules/catalogues.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"view_catalogue_index";s:11:"description";s:40:"The UI to show the index of a catalogue.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:9:"view_atoz";a:6:{s:8:"filename";s:33:"site/pages/modules/catalogues.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"view_atoz";s:11:"description";s:38:"The UI to show a catalogue A-Z screen.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:23:"view_catalogue_category";a:6:{s:8:"filename";s:33:"site/pages/modules/catalogues.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"view_catalogue_category";s:11:"description";s:36:"The UI to show a catalogue category.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:20:"view_catalogue_entry";a:6:{s:8:"filename";s:33:"site/pages/modules/catalogues.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"view_catalogue_entry";s:11:"description";s:33:"The UI to show a catalogue entry.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:17:"Module_catalogues";s:7:"comment";b:1;}s:11:"Module_chat";a:3:{s:9:"functions";a:22:{s:4:"info";a:6:{s:8:"filename";s:27:"site/pages/modules/chat.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:9:"uninstall";a:5:{s:8:"filename";s:27:"site/pages/modules/chat.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"uninstall";s:11:"description";s:21:"Uninstall the module.";s:5:"flags";a:0:{}}s:7:"install";a:5:{s:8:"filename";s:27:"site/pages/modules/chat.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:12:"upgrade_from";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"What version we're upgrading from (null: new install)";s:11:"phpdoc_name";s:12:"upgrade_from";}i:1;a:7:{s:4:"name";s:17:"upgrade_from_hack";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:94:"What hack version we're upgrading from (null: new-install/not-upgrading-from-a-hacked-version)";s:11:"phpdoc_name";s:17:"upgrade_from_hack";}}s:4:"name";s:7:"install";s:11:"description";s:19:"Install the module.";s:5:"flags";a:0:{}}s:16:"get_entry_points";a:6:{s:8:"filename";s:27:"site/pages/modules/chat.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:27:"site/pages/modules/chat.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:27:"site/pages/modules/chat.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:10:"chat_lobby";a:6:{s:8:"filename";s:27:"site/pages/modules/chat.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"chat_lobby";s:11:"description";s:28:"The UI to choose a chatroom.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:9:"chat_room";a:6:{s:8:"filename";s:27:"site/pages/modules/chat.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"chat_room";s:11:"description";s:22:"The UI for a chatroom.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:12:"chat_private";a:6:{s:8:"filename";s:27:"site/pages/modules/chat.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"chat_private";s:11:"description";s:36:"The UI to create a private chatroom.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:13:"_chat_private";a:6:{s:8:"filename";s:27:"site/pages/modules/chat.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"_chat_private";s:11:"description";s:33:"The actualiser to add a chatroom.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:66:"The UI to choose a chatroom (probably what was just added, but...)";}}s:18:"blocking_interface";a:6:{s:8:"filename";s:27:"site/pages/modules/chat.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"blocking_interface";s:11:"description";s:32:"The UI to manage who is blocked.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:12:"blocking_set";a:6:{s:8:"filename";s:27:"site/pages/modules/chat.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"blocking_set";s:11:"description";s:25:"Change blocking settings.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:13:"handle_repost";a:6:{s:8:"filename";s:27:"site/pages/modules/chat.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:6:"action";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:36:"The language string ID of our action";s:11:"phpdoc_name";s:6:"action";}i:1;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:19:"Parameter of action";s:11:"phpdoc_name";s:5:"param";}}s:4:"name";s:13:"handle_repost";s:11:"description";s:144:"Certain add/remove actions may be triggered by hyperlinks, but they need confirming because a link click should never constitute a state change.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:72:"If a confirm page is being output, this is it (null: continue as before)";}}s:12:"blocking_add";a:6:{s:8:"filename";s:27:"site/pages/modules/chat.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"blocking_add";s:11:"description";s:77:"Change blocking settings (add one specific to block list, and then redirect).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:15:"blocking_remove";a:6:{s:8:"filename";s:27:"site/pages/modules/chat.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"blocking_remove";s:11:"description";s:89:"Change blocking settings (remove one specific member from block list, and then redirect).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:10:"friend_add";a:6:{s:8:"filename";s:27:"site/pages/modules/chat.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"friend_add";s:11:"description";s:13:"Add a friend.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:13:"friend_remove";a:6:{s:8:"filename";s:27:"site/pages/modules/chat.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"friend_remove";s:11:"description";s:16:"Remove a friend.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:17:"chat_save_options";a:6:{s:8:"filename";s:27:"site/pages/modules/chat.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"chat_save_options";s:11:"description";s:38:"Save the user's options into a cookie.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:18:"chat_download_logs";a:6:{s:8:"filename";s:27:"site/pages/modules/chat.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"chat_download_logs";s:11:"description";s:29:"The UI to download chat logs.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:19:"_chat_download_logs";a:6:{s:8:"filename";s:27:"site/pages/modules/chat.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"_chat_download_logs";s:11:"description";s:37:"The actualiser to download chat logs.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:11:"set_effects";a:6:{s:8:"filename";s:27:"site/pages/modules/chat.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"set_effects";s:11:"description";s:40:"The interface for setting sound effects.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:12:"_set_effects";a:6:{s:8:"filename";s:27:"site/pages/modules/chat.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"_set_effects";s:11:"description";s:36:"The actualiser to set sound effects.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:11:"Module_chat";s:7:"comment";b:1;}s:21:"Module_contact_member";a:3:{s:9:"functions";a:8:{s:4:"info";a:6:{s:8:"filename";s:37:"site/pages/modules/contact_member.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:9:"uninstall";a:5:{s:8:"filename";s:37:"site/pages/modules/contact_member.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"uninstall";s:11:"description";s:21:"Uninstall the module.";s:5:"flags";a:0:{}}s:7:"install";a:5:{s:8:"filename";s:37:"site/pages/modules/contact_member.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:12:"upgrade_from";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"What version we're upgrading from (null: new install)";s:11:"phpdoc_name";s:12:"upgrade_from";}i:1;a:7:{s:4:"name";s:17:"upgrade_from_hack";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:94:"What hack version we're upgrading from (null: new-install/not-upgrading-from-a-hacked-version)";s:11:"phpdoc_name";s:17:"upgrade_from_hack";}}s:4:"name";s:7:"install";s:11:"description";s:19:"Install the module.";s:5:"flags";a:0:{}}s:16:"get_entry_points";a:6:{s:8:"filename";s:37:"site/pages/modules/contact_member.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:37:"site/pages/modules/contact_member.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:37:"site/pages/modules/contact_member.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:3:"gui";a:6:{s:8:"filename";s:37:"site/pages/modules/contact_member.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"gui";s:11:"description";s:27:"The UI to contact a member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:6:"actual";a:6:{s:8:"filename";s:37:"site/pages/modules/contact_member.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"actual";s:11:"description";s:35:"The actualiser to contact a member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:21:"Module_contact_member";s:7:"comment";b:1;}s:16:"Module_downloads";a:3:{s:9:"functions";a:9:{s:4:"info";a:6:{s:8:"filename";s:32:"site/pages/modules/downloads.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:9:"uninstall";a:5:{s:8:"filename";s:32:"site/pages/modules/downloads.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"uninstall";s:11:"description";s:21:"Uninstall the module.";s:5:"flags";a:0:{}}s:7:"install";a:5:{s:8:"filename";s:32:"site/pages/modules/downloads.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:12:"upgrade_from";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"What version we're upgrading from (null: new install)";s:11:"phpdoc_name";s:12:"upgrade_from";}i:1;a:7:{s:4:"name";s:17:"upgrade_from_hack";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:94:"What hack version we're upgrading from (null: new-install/not-upgrading-from-a-hacked-version)";s:11:"phpdoc_name";s:17:"upgrade_from_hack";}}s:4:"name";s:7:"install";s:11:"description";s:19:"Install the module.";s:5:"flags";a:0:{}}s:16:"get_entry_points";a:6:{s:8:"filename";s:32:"site/pages/modules/downloads.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:32:"site/pages/modules/downloads.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:32:"site/pages/modules/downloads.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:20:"view_category_screen";a:6:{s:8:"filename";s:32:"site/pages/modules/downloads.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"view_category_screen";s:11:"description";s:35:"The UI to view a download category.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:16:"view_atoz_screen";a:6:{s:8:"filename";s:32:"site/pages/modules/downloads.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"view_atoz_screen";s:11:"description";s:32:"The UI to view a download index.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:20:"view_download_screen";a:6:{s:8:"filename";s:32:"site/pages/modules/downloads.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"view_download_screen";s:11:"description";s:26:"The UI to view a download.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:16:"Module_downloads";s:7:"comment";b:1;}s:16:"Module_galleries";a:3:{s:9:"functions";a:14:{s:4:"info";a:6:{s:8:"filename";s:32:"site/pages/modules/galleries.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:9:"uninstall";a:5:{s:8:"filename";s:32:"site/pages/modules/galleries.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"uninstall";s:11:"description";s:21:"Uninstall the module.";s:5:"flags";a:0:{}}s:7:"install";a:5:{s:8:"filename";s:32:"site/pages/modules/galleries.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:12:"upgrade_from";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"What version we're upgrading from (null: new install)";s:11:"phpdoc_name";s:12:"upgrade_from";}i:1;a:7:{s:4:"name";s:17:"upgrade_from_hack";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:94:"What hack version we're upgrading from (null: new-install/not-upgrading-from-a-hacked-version)";s:11:"phpdoc_name";s:17:"upgrade_from_hack";}}s:4:"name";s:7:"install";s:11:"description";s:19:"Install the module.";s:5:"flags";a:0:{}}s:16:"get_entry_points";a:6:{s:8:"filename";s:32:"site/pages/modules/galleries.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:32:"site/pages/modules/galleries.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:32:"site/pages/modules/galleries.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:10:"do_gallery";a:6:{s:8:"filename";s:32:"site/pages/modules/galleries.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"do_gallery";s:11:"description";s:25:"The UI to show a gallery.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:20:"do_gallery_flow_mode";a:6:{s:8:"filename";s:32:"site/pages/modules/galleries.php";s:10:"parameters";a:18:{i:0;a:5:{s:4:"name";s:14:"rating_details";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"Rating area";s:11:"phpdoc_name";s:14:"rating_details";}i:1;a:5:{s:4:"name";s:15:"comment_details";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"Commenting area";s:11:"phpdoc_name";s:15:"comment_details";}i:2;a:5:{s:4:"name";s:3:"cat";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"Our gallery ID";s:11:"phpdoc_name";s:3:"cat";}i:3;a:5:{s:4:"name";s:4:"root";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:20:"Virtual root gallery";s:11:"phpdoc_name";s:4:"root";}i:4;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:30:"The description of the gallery";s:11:"phpdoc_name";s:11:"description";}i:5;a:5:{s:4:"name";s:8:"children";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:44:"The Tempcode for our visible child galleries";s:11:"phpdoc_name";s:8:"children";}i:6;a:5:{s:4:"name";s:12:"may_download";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:35:"Whether may "download this gallery"";s:11:"phpdoc_name";s:12:"may_download";}i:7;a:5:{s:4:"name";s:8:"edit_url";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:30:"The URL to "edit this gallery"";s:11:"phpdoc_name";s:8:"edit_url";}i:8;a:5:{s:4:"name";s:15:"add_gallery_url";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:26:"The URL to "add a gallery"";s:11:"phpdoc_name";s:15:"add_gallery_url";}i:9;a:5:{s:4:"name";s:16:"submit_image_url";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:44:"The URL to "submit an image to this gallery"";s:11:"phpdoc_name";s:16:"submit_image_url";}i:10;a:5:{s:4:"name";s:16:"submit_video_url";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:43:"The URL to "submit a video to this gallery"";s:11:"phpdoc_name";s:16:"submit_video_url";}i:11;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:47:"The title of the page (our of get_screen_title)";s:11:"phpdoc_name";s:5:"title";}i:12;a:5:{s:4:"name";s:9:"rep_image";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:40:"The representative image for the gallery";s:11:"phpdoc_name";s:9:"rep_image";}i:13;a:5:{s:4:"name";s:5:"start";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:61:"The start position we are in browsing through child galleries";s:11:"phpdoc_name";s:5:"start";}i:14;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:61:"The maximum number of child galleries we can display per page";s:11:"phpdoc_name";s:3:"max";}i:15;a:5:{s:4:"name";s:8:"fullname";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:17:"The gallery title";s:11:"phpdoc_name";s:8:"fullname";}i:16;a:5:{s:4:"name";s:7:"sorting";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:10:"Sorting UI";s:11:"phpdoc_name";s:7:"sorting";}i:17;a:5:{s:4:"name";s:11:"gallery_row";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The gallery row";s:11:"phpdoc_name";s:11:"gallery_row";}}s:4:"name";s:20:"do_gallery_flow_mode";s:11:"description";s:33:"The UI for a "flow mode" gallery.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:23:"do_gallery_regular_mode";a:6:{s:8:"filename";s:32:"site/pages/modules/galleries.php";s:10:"parameters";a:15:{i:0;a:5:{s:4:"name";s:14:"rating_details";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:11:"Rating area";s:11:"phpdoc_name";s:14:"rating_details";}i:1;a:5:{s:4:"name";s:15:"comment_details";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"Commenting area";s:11:"phpdoc_name";s:15:"comment_details";}i:2;a:5:{s:4:"name";s:3:"cat";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"Our gallery ID";s:11:"phpdoc_name";s:3:"cat";}i:3;a:5:{s:4:"name";s:4:"root";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:20:"Virtual root gallery";s:11:"phpdoc_name";s:4:"root";}i:4;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:30:"The description of the gallery";s:11:"phpdoc_name";s:11:"description";}i:5;a:5:{s:4:"name";s:8:"children";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:44:"The Tempcode for our visible child galleries";s:11:"phpdoc_name";s:8:"children";}i:6;a:5:{s:4:"name";s:12:"may_download";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:35:"Whether may "download this gallery"";s:11:"phpdoc_name";s:12:"may_download";}i:7;a:5:{s:4:"name";s:8:"edit_url";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:30:"The URL to "edit this gallery"";s:11:"phpdoc_name";s:8:"edit_url";}i:8;a:5:{s:4:"name";s:15:"add_gallery_url";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:26:"The URL to "add a gallery"";s:11:"phpdoc_name";s:15:"add_gallery_url";}i:9;a:5:{s:4:"name";s:16:"submit_image_url";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:44:"The URL to "submit an image to this gallery"";s:11:"phpdoc_name";s:16:"submit_image_url";}i:10;a:5:{s:4:"name";s:16:"submit_video_url";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:43:"The URL to "submit a video to this gallery"";s:11:"phpdoc_name";s:16:"submit_video_url";}i:11;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:47:"The title of the page (our of get_screen_title)";s:11:"phpdoc_name";s:5:"title";}i:12;a:5:{s:4:"name";s:8:"fullname";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:17:"The gallery title";s:11:"phpdoc_name";s:8:"fullname";}i:13;a:5:{s:4:"name";s:7:"sorting";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:10:"Sorting UI";s:11:"phpdoc_name";s:7:"sorting";}i:14;a:5:{s:4:"name";s:11:"gallery_row";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The gallery row";s:11:"phpdoc_name";s:11:"gallery_row";}}s:4:"name";s:23:"do_gallery_regular_mode";s:11:"description";s:37:"The UI for an "regular mode" gallery.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:10:"show_image";a:6:{s:8:"filename";s:32:"site/pages/modules/galleries.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:13:"category_name";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:140:"Alternate category name to use (null: use standard one). This is useful if you are overriding this code to show images in virtual galleries.";s:11:"phpdoc_name";s:13:"category_name";}i:1;a:7:{s:4:"name";s:11:"breadcrumbs";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:9:"?Tempcode";s:11:"description";s:44:"Breadcrumbs (null: derive in this function).";s:11:"phpdoc_name";s:11:"breadcrumbs";}}s:4:"name";s:10:"show_image";s:11:"description";s:24:"The UI to show an image.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:10:"show_video";a:6:{s:8:"filename";s:32:"site/pages/modules/galleries.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:13:"category_name";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:140:"Alternate category name to use (null: use standard one). This is useful if you are overriding this code to show images in virtual galleries.";s:11:"phpdoc_name";s:13:"category_name";}i:1;a:7:{s:4:"name";s:11:"breadcrumbs";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:9:"?Tempcode";s:11:"description";s:44:"Breadcrumbs (null: derive in this function).";s:11:"phpdoc_name";s:11:"breadcrumbs";}}s:4:"name";s:10:"show_video";s:11:"description";s:23:"The UI to show a video.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:20:"build_set_navigation";a:6:{s:8:"filename";s:32:"site/pages/modules/galleries.php";s:10:"parameters";a:17:{i:0;a:5:{s:4:"name";s:5:"where";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:32:"Where clause for doing set query";s:11:"phpdoc_name";s:5:"where";}i:1;a:5:{s:4:"name";s:4:"join";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:31:"Join clause for doing set query";s:11:"phpdoc_name";s:4:"join";}i:2;a:5:{s:4:"name";s:13:"category_name";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:45:"The actual title for the gallery we are using";s:11:"phpdoc_name";s:13:"category_name";}i:3;a:5:{s:4:"name";s:10:"current_id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:104:"The ID of the current entry of the type we are browsing in the gallery we are using (null: assume first)";s:11:"phpdoc_name";s:10:"current_id";}i:4;a:5:{s:4:"name";s:4:"root";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:98:"The root gallery (the gallery we are considering as an ad hoc root, to allow gallery splitting-up)";s:11:"phpdoc_name";s:4:"root";}i:5;a:6:{s:4:"name";s:12:"current_type";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:51:"The current type being browsed (null: assume first)";s:11:"phpdoc_name";s:12:"current_type";s:3:"set";s:11:"image video";}i:6;a:5:{s:4:"name";s:9:"slideshow";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:15:"If in slideshow";s:11:"phpdoc_name";s:9:"slideshow";}i:7;a:5:{s:4:"name";s:9:"wide_high";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:16:"If panels hidden";s:11:"phpdoc_name";s:9:"wide_high";}i:8;a:5:{s:4:"name";s:5:"start";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:41:"Start position when returning to category";s:11:"phpdoc_name";s:5:"start";}i:9;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:38:"Max to show when returning to category";s:11:"phpdoc_name";s:3:"max";}i:10;a:5:{s:4:"name";s:3:"cat";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:8:"Category";s:11:"phpdoc_name";s:3:"cat";}i:11;a:5:{s:4:"name";s:4:"sort";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:10:"Sort order";s:11:"phpdoc_name";s:4:"sort";}i:12;a:5:{s:4:"name";s:14:"sort_backwards";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:30:"Sort order for reverse sorting";s:11:"phpdoc_name";s:14:"sort_backwards";}i:13;a:5:{s:4:"name";s:17:"sql_suffix_images";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:37:"Select clause query suffix for images";s:11:"phpdoc_name";s:17:"sql_suffix_images";}i:14;a:5:{s:4:"name";s:17:"sql_suffix_videos";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:37:"Select clause query suffix for videos";s:11:"phpdoc_name";s:17:"sql_suffix_videos";}i:15;a:5:{s:4:"name";s:12:"image_select";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:40:"Selectcode for limiting images displayed";s:11:"phpdoc_name";s:12:"image_select";}i:16;a:5:{s:4:"name";s:12:"video_select";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:40:"Selectcode for limiting videos displayed";s:11:"phpdoc_name";s:12:"video_select";}}s:4:"name";s:20:"build_set_navigation";s:11:"description";s:38:"Sort out gallery back/next navigation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:30:"A tuple of the navigation bits";}}s:8:"show_nav";a:6:{s:8:"filename";s:32:"site/pages/modules/galleries.php";s:10:"parameters";a:25:{i:0;a:5:{s:4:"name";s:13:"category_name";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:45:"The actual title for the gallery we are using";s:11:"phpdoc_name";s:13:"category_name";}i:1;a:5:{s:4:"name";s:5:"where";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:32:"Where clause for doing set query";s:11:"phpdoc_name";s:5:"where";}i:2;a:5:{s:4:"name";s:4:"join";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:31:"Join clause for doing set query";s:11:"phpdoc_name";s:4:"join";}i:3;a:5:{s:4:"name";s:10:"current_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:83:"The ID of the current entry of the type we are browsing in the gallery we are using";s:11:"phpdoc_name";s:10:"current_id";}i:4;a:5:{s:4:"name";s:8:"first_id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:98:"The ID of the first entry of the type we are browsing in the gallery we are using (null: no first)";s:11:"phpdoc_name";s:8:"first_id";}i:5;a:5:{s:4:"name";s:7:"back_id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:104:"The ID of the previous entry of the type we are browsing in the gallery we are using (null: no previous)";s:11:"phpdoc_name";s:7:"back_id";}i:6;a:5:{s:4:"name";s:7:"next_id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:43:"As above, except next entry (null: no next)";s:11:"phpdoc_name";s:7:"next_id";}i:7;a:5:{s:4:"name";s:4:"root";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:98:"The root gallery (the gallery we are considering as an ad hoc root, to allow gallery splitting-up)";s:11:"phpdoc_name";s:4:"root";}i:8;a:5:{s:4:"name";s:1:"x";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:22:"Position in collection";s:11:"phpdoc_name";s:1:"x";}i:9;a:5:{s:4:"name";s:1:"n";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:19:"Total in collection";s:11:"phpdoc_name";s:1:"n";}i:10;a:6:{s:4:"name";s:12:"current_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:28:"The first type being browsed";s:11:"phpdoc_name";s:12:"current_type";s:3:"set";s:11:"image video";}i:11;a:6:{s:4:"name";s:10:"first_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:30:"The current type being browsed";s:11:"phpdoc_name";s:10:"first_type";s:3:"set";s:11:"image video";}i:12;a:6:{s:4:"name";s:9:"back_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:26:"The type for the back link";s:11:"phpdoc_name";s:9:"back_type";s:3:"set";s:11:"image video";}i:13;a:6:{s:4:"name";s:9:"next_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:26:"The type for the next link";s:11:"phpdoc_name";s:9:"next_type";s:3:"set";s:11:"image video";}i:14;a:5:{s:4:"name";s:9:"slideshow";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:15:"If in slideshow";s:11:"phpdoc_name";s:9:"slideshow";}i:15;a:5:{s:4:"name";s:9:"wide_high";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:16:"If panels hidden";s:11:"phpdoc_name";s:9:"wide_high";}i:16;a:5:{s:4:"name";s:5:"start";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:41:"Start position when returning to category";s:11:"phpdoc_name";s:5:"start";}i:17;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:38:"Max to show when returning to category";s:11:"phpdoc_name";s:3:"max";}i:18;a:5:{s:4:"name";s:3:"cat";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:34:"Category (null: not in a category)";s:11:"phpdoc_name";s:3:"cat";}i:19;a:5:{s:4:"name";s:4:"sort";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:10:"Sort order";s:11:"phpdoc_name";s:4:"sort";}i:20;a:5:{s:4:"name";s:14:"sort_backwards";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:30:"Sort order for reverse sorting";s:11:"phpdoc_name";s:14:"sort_backwards";}i:21;a:5:{s:4:"name";s:17:"sql_suffix_images";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:37:"Select clause query suffix for images";s:11:"phpdoc_name";s:17:"sql_suffix_images";}i:22;a:5:{s:4:"name";s:17:"sql_suffix_videos";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:37:"Select clause query suffix for videos";s:11:"phpdoc_name";s:17:"sql_suffix_videos";}i:23;a:5:{s:4:"name";s:12:"image_select";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:40:"Selectcode for limiting images displayed";s:11:"phpdoc_name";s:12:"image_select";}i:24;a:5:{s:4:"name";s:12:"video_select";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:40:"Selectcode for limiting videos displayed";s:11:"phpdoc_name";s:12:"video_select";}}s:4:"name";s:8:"show_nav";s:11:"description";s:61:"Show gallery navigation bits used when viewing images/videos.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:19:"The navigation bits";}}s:14:"get_sort_order";a:6:{s:8:"filename";s:32:"site/pages/modules/galleries.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_sort_order";s:11:"description";s:114:"Read in the sort order currently active, and a suffix to the select statement to allow it to work. Apply security.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:153:"A quarter: The sort order, The sort order (for backwards sorting), SQL suffix for select statement for images, SQL suffix for select statement for videos";}}}s:4:"name";s:16:"Module_galleries";s:7:"comment";b:1;}s:13:"Module_groups";a:3:{s:9:"functions";a:13:{s:4:"info";a:6:{s:8:"filename";s:29:"site/pages/modules/groups.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:16:"get_entry_points";a:6:{s:8:"filename";s:29:"site/pages/modules/groups.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:29:"site/pages/modules/groups.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:29:"site/pages/modules/groups.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:9:"directory";a:6:{s:8:"filename";s:29:"site/pages/modules/groups.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"directory";s:11:"description";s:39:"The UI to show the usergroup directory.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:20:"_find_table_headings";a:6:{s:8:"filename";s:29:"site/pages/modules/groups.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:10:"has_images";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether there are rank images";s:11:"phpdoc_name";s:10:"has_images";}i:1;a:5:{s:4:"name";s:8:"has_rank";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:33:"Whether there are rank promotions";s:11:"phpdoc_name";s:8:"has_rank";}}s:4:"name";s:20:"_find_table_headings";s:11:"description";s:38:"Find table column widths and headings.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:37:"A pair: column widths, table headings";}}s:9:"usergroup";a:6:{s:8:"filename";s:29:"site/pages/modules/groups.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"usergroup";s:11:"description";s:27:"The UI to show a usergroup.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:6:"add_to";a:6:{s:8:"filename";s:29:"site/pages/modules/groups.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:18:"special_permission";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:57:"Whether to skip checking permission for usergroup control";s:11:"phpdoc_name";s:18:"special_permission";}i:1;a:7:{s:4:"name";s:8:"username";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:45:"Username to add (null: read from environment)";s:11:"phpdoc_name";s:8:"username";}}s:4:"name";s:6:"add_to";s:11:"description";s:46:"The actualiser to add a member to a usergroup.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:11:"remove_from";a:6:{s:8:"filename";s:29:"site/pages/modules/groups.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"remove_from";s:11:"description";s:51:"The actualiser to remove a member from a usergroup.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:5:"apply";a:6:{s:8:"filename";s:29:"site/pages/modules/groups.php";s:10:"parameters";a:0:{}s:4:"name";s:5:"apply";s:11:"description";s:44:"The actualiser to apply to join a usergroup.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:6:"accept";a:6:{s:8:"filename";s:29:"site/pages/modules/groups.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"accept";s:11:"description";s:51:"The actualiser to accept a member into a usergroup.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:7:"decline";a:6:{s:8:"filename";s:29:"site/pages/modules/groups.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"decline";s:11:"description";s:59:"The actualiser to decline a members joining of a usergroup.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:6:"resign";a:6:{s:8:"filename";s:29:"site/pages/modules/groups.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"resign";s:11:"description";s:42:"The actualiser to resign from a usergroup.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:13:"Module_groups";s:7:"comment";b:1;}s:15:"Module_invoices";a:3:{s:9:"functions";a:8:{s:4:"info";a:6:{s:8:"filename";s:31:"site/pages/modules/invoices.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:9:"uninstall";a:5:{s:8:"filename";s:31:"site/pages/modules/invoices.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"uninstall";s:11:"description";s:21:"Uninstall the module.";s:5:"flags";a:0:{}}s:7:"install";a:5:{s:8:"filename";s:31:"site/pages/modules/invoices.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:12:"upgrade_from";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"What version we're upgrading from (null: new install)";s:11:"phpdoc_name";s:12:"upgrade_from";}i:1;a:7:{s:4:"name";s:17:"upgrade_from_hack";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:94:"What hack version we're upgrading from (null: new-install/not-upgrading-from-a-hacked-version)";s:11:"phpdoc_name";s:17:"upgrade_from_hack";}}s:4:"name";s:7:"install";s:11:"description";s:19:"Install the module.";s:5:"flags";a:0:{}}s:16:"get_entry_points";a:6:{s:8:"filename";s:31:"site/pages/modules/invoices.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:31:"site/pages/modules/invoices.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:31:"site/pages/modules/invoices.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:2:"my";a:6:{s:8:"filename";s:31:"site/pages/modules/invoices.php";s:10:"parameters";a:0:{}s:4:"name";s:2:"my";s:11:"description";s:17:"Show my invoices.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:14:"The interface.";}}s:3:"pay";a:6:{s:8:"filename";s:31:"site/pages/modules/invoices.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"pay";s:11:"description";s:23:"Form to pay an invoice.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:14:"The interface.";}}}s:4:"name";s:15:"Module_invoices";s:7:"comment";b:1;}s:19:"Module_leader_board";a:3:{s:9:"functions";a:4:{s:4:"info";a:6:{s:8:"filename";s:35:"site/pages/modules/leader_board.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:16:"get_entry_points";a:6:{s:8:"filename";s:35:"site/pages/modules/leader_board.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:35:"site/pages/modules/leader_board.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:35:"site/pages/modules/leader_board.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:19:"Module_leader_board";s:7:"comment";b:1;}s:14:"Module_members";a:3:{s:9:"functions";a:6:{s:4:"info";a:6:{s:8:"filename";s:30:"site/pages/modules/members.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:16:"get_entry_points";a:6:{s:8:"filename";s:30:"site/pages/modules/members.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:30:"site/pages/modules/members.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:30:"site/pages/modules/members.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:9:"directory";a:6:{s:8:"filename";s:30:"site/pages/modules/members.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"directory";s:11:"description";s:36:"The UI to show the member directory.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:7:"profile";a:6:{s:8:"filename";s:30:"site/pages/modules/members.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"profile";s:11:"description";s:34:"The UI to show a member's profile.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:14:"Module_members";s:7:"comment";b:1;}s:11:"Module_news";a:3:{s:9:"functions";a:9:{s:4:"info";a:6:{s:8:"filename";s:27:"site/pages/modules/news.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:9:"uninstall";a:5:{s:8:"filename";s:27:"site/pages/modules/news.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"uninstall";s:11:"description";s:21:"Uninstall the module.";s:5:"flags";a:0:{}}s:7:"install";a:5:{s:8:"filename";s:27:"site/pages/modules/news.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:12:"upgrade_from";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"What version we're upgrading from (null: new install)";s:11:"phpdoc_name";s:12:"upgrade_from";}i:1;a:7:{s:4:"name";s:17:"upgrade_from_hack";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:94:"What hack version we're upgrading from (null: new-install/not-upgrading-from-a-hacked-version)";s:11:"phpdoc_name";s:17:"upgrade_from_hack";}}s:4:"name";s:7:"install";s:11:"description";s:19:"Install the module.";s:5:"flags";a:0:{}}s:16:"get_entry_points";a:6:{s:8:"filename";s:27:"site/pages/modules/news.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:27:"site/pages/modules/news.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:27:"site/pages/modules/news.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:15:"news_cat_select";a:6:{s:8:"filename";s:27:"site/pages/modules/news.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"blogs";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:54:"What to show (null: news and blogs, 0: news, 1: blogs)";s:11:"phpdoc_name";s:5:"blogs";}}s:4:"name";s:15:"news_cat_select";s:11:"description";s:53:"The UI to select a news category to view news within.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:12:"news_archive";a:6:{s:8:"filename";s:27:"site/pages/modules/news.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"news_archive";s:11:"description";s:32:"The UI to view the news archive.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:9:"view_news";a:6:{s:8:"filename";s:27:"site/pages/modules/news.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"view_news";s:11:"description";s:28:"The UI to view a news entry.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:11:"Module_news";s:7:"comment";b:1;}s:17:"Module_newsletter";a:3:{s:9:"functions";a:12:{s:4:"info";a:6:{s:8:"filename";s:33:"site/pages/modules/newsletter.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:9:"uninstall";a:5:{s:8:"filename";s:33:"site/pages/modules/newsletter.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"uninstall";s:11:"description";s:21:"Uninstall the module.";s:5:"flags";a:0:{}}s:7:"install";a:5:{s:8:"filename";s:33:"site/pages/modules/newsletter.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:12:"upgrade_from";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"What version we're upgrading from (null: new install)";s:11:"phpdoc_name";s:12:"upgrade_from";}i:1;a:7:{s:4:"name";s:17:"upgrade_from_hack";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:94:"What hack version we're upgrading from (null: new-install/not-upgrading-from-a-hacked-version)";s:11:"phpdoc_name";s:17:"upgrade_from_hack";}}s:4:"name";s:7:"install";s:11:"description";s:19:"Install the module.";s:5:"flags";a:0:{}}s:16:"get_entry_points";a:6:{s:8:"filename";s:33:"site/pages/modules/newsletter.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:33:"site/pages/modules/newsletter.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:33:"site/pages/modules/newsletter.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:15:"newsletter_form";a:6:{s:8:"filename";s:33:"site/pages/modules/newsletter.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"newsletter_form";s:11:"description";s:78:"The UI to sign up to the newsletter (actually, generally manage subscription).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:22:"newsletter_maintenance";a:6:{s:8:"filename";s:33:"site/pages/modules/newsletter.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"newsletter_maintenance";s:11:"description";s:84:"The actualiser for newsletter subscription maintenance (adding, updating, deleting).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:25:"newsletter_password_reset";a:6:{s:8:"filename";s:33:"site/pages/modules/newsletter.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"newsletter_password_reset";s:11:"description";s:49:"The actualiser for resetting newsletter password.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:22:"newsletter_unsubscribe";a:6:{s:8:"filename";s:33:"site/pages/modules/newsletter.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"newsletter_unsubscribe";s:11:"description";s:53:"The actualiser for unsubscribing from the newsletter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:18:"_send_confirmation";a:5:{s:8:"filename";s:33:"site/pages/modules/newsletter.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:5:"email";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:18:"The e-mail address";s:11:"phpdoc_name";s:5:"email";}i:1;a:5:{s:4:"name";s:12:"code_confirm";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:21:"The confirmation code";s:11:"phpdoc_name";s:12:"code_confirm";}i:2;a:5:{s:4:"name";s:8:"password";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:104:"The newsletter password (null: password may not be viewed, because it's been permanently hashed already)";s:11:"phpdoc_name";s:8:"password";}i:3;a:5:{s:4:"name";s:8:"forename";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:20:"Subscribers forename";s:11:"phpdoc_name";s:8:"forename";}i:4;a:5:{s:4:"name";s:7:"surname";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:19:"Subscribers surname";s:11:"phpdoc_name";s:7:"surname";}}s:4:"name";s:18:"_send_confirmation";s:11:"description";s:36:"Send a newsletter join confirmation.";s:5:"flags";a:0:{}}s:26:"newsletter_confirm_joining";a:6:{s:8:"filename";s:33:"site/pages/modules/newsletter.php";s:10:"parameters";a:0:{}s:4:"name";s:26:"newsletter_confirm_joining";s:11:"description";s:66:"The UI for having confirmed an e-mail address onto the newsletter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:17:"Module_newsletter";s:7:"comment";b:1;}s:20:"Module_notifications";a:3:{s:9:"functions";a:8:{s:4:"info";a:6:{s:8:"filename";s:36:"site/pages/modules/notifications.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:16:"get_entry_points";a:6:{s:8:"filename";s:36:"site/pages/modules/notifications.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:36:"site/pages/modules/notifications.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:36:"site/pages/modules/notifications.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:6:"browse";a:6:{s:8:"filename";s:36:"site/pages/modules/notifications.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"browse";s:11:"description";s:33:"Show an overall notifications UI.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:4:"view";a:6:{s:8:"filename";s:36:"site/pages/modules/notifications.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"view";s:11:"description";s:33:"Show an overall notifications UI.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:7:"overall";a:6:{s:8:"filename";s:36:"site/pages/modules/notifications.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"overall";s:11:"description";s:42:"Show an overall notifications settings UI.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:8:"advanced";a:6:{s:8:"filename";s:36:"site/pages/modules/notifications.php";s:10:"parameters";a:0:{}s:4:"name";s:8:"advanced";s:11:"description";s:43:"Show an advanced notifications settings UI.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:20:"Module_notifications";s:7:"comment";b:1;}s:13:"Module_points";a:3:{s:9:"functions";a:10:{s:4:"info";a:6:{s:8:"filename";s:29:"site/pages/modules/points.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:9:"uninstall";a:5:{s:8:"filename";s:29:"site/pages/modules/points.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"uninstall";s:11:"description";s:21:"Uninstall the module.";s:5:"flags";a:0:{}}s:7:"install";a:5:{s:8:"filename";s:29:"site/pages/modules/points.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:12:"upgrade_from";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"What version we're upgrading from (null: new install)";s:11:"phpdoc_name";s:12:"upgrade_from";}i:1;a:7:{s:4:"name";s:17:"upgrade_from_hack";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:94:"What hack version we're upgrading from (null: new-install/not-upgrading-from-a-hacked-version)";s:11:"phpdoc_name";s:17:"upgrade_from_hack";}}s:4:"name";s:7:"install";s:11:"description";s:19:"Install the module.";s:5:"flags";a:0:{}}s:16:"get_entry_points";a:6:{s:8:"filename";s:29:"site/pages/modules/points.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:29:"site/pages/modules/points.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:29:"site/pages/modules/points.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:18:"points_search_form";a:6:{s:8:"filename";s:29:"site/pages/modules/points.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"points_search_form";s:11:"description";s:75:"The UI to search for a member (with regard to viewing their point profile).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:21:"points_search_results";a:6:{s:8:"filename";s:29:"site/pages/modules/points.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"points_search_results";s:11:"description";s:43:"The actualiser for a points profile search.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:14:"points_profile";a:6:{s:8:"filename";s:29:"site/pages/modules/points.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"points_profile";s:11:"description";s:28:"The UI for a points profile.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:7:"do_give";a:6:{s:8:"filename";s:29:"site/pages/modules/points.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"do_give";s:11:"description";s:44:"The actualiser for a gift point transaction.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:13:"Module_points";s:7:"comment";b:1;}s:17:"Module_pointstore";a:3:{s:9:"functions";a:7:{s:4:"info";a:6:{s:8:"filename";s:33:"site/pages/modules/pointstore.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:9:"uninstall";a:5:{s:8:"filename";s:33:"site/pages/modules/pointstore.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"uninstall";s:11:"description";s:21:"Uninstall the module.";s:5:"flags";a:0:{}}s:7:"install";a:5:{s:8:"filename";s:33:"site/pages/modules/pointstore.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:12:"upgrade_from";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"What version we're upgrading from (null: new install)";s:11:"phpdoc_name";s:12:"upgrade_from";}i:1;a:7:{s:4:"name";s:17:"upgrade_from_hack";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:94:"What hack version we're upgrading from (null: new-install/not-upgrading-from-a-hacked-version)";s:11:"phpdoc_name";s:17:"upgrade_from_hack";}}s:4:"name";s:7:"install";s:11:"description";s:19:"Install the module.";s:5:"flags";a:0:{}}s:16:"get_entry_points";a:6:{s:8:"filename";s:33:"site/pages/modules/pointstore.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:33:"site/pages/modules/pointstore.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:33:"site/pages/modules/pointstore.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:20:"interface_pointstore";a:6:{s:8:"filename";s:33:"site/pages/modules/pointstore.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"interface_pointstore";s:11:"description";s:46:"The UI to choose a section of the Point Store.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:17:"Module_pointstore";s:7:"comment";b:1;}s:12:"Module_polls";a:3:{s:9:"functions";a:8:{s:4:"info";a:6:{s:8:"filename";s:28:"site/pages/modules/polls.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:9:"uninstall";a:5:{s:8:"filename";s:28:"site/pages/modules/polls.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"uninstall";s:11:"description";s:21:"Uninstall the module.";s:5:"flags";a:0:{}}s:7:"install";a:5:{s:8:"filename";s:28:"site/pages/modules/polls.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:12:"upgrade_from";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"What version we're upgrading from (null: new install)";s:11:"phpdoc_name";s:12:"upgrade_from";}i:1;a:7:{s:4:"name";s:17:"upgrade_from_hack";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:94:"What hack version we're upgrading from (null: new-install/not-upgrading-from-a-hacked-version)";s:11:"phpdoc_name";s:17:"upgrade_from_hack";}}s:4:"name";s:7:"install";s:11:"description";s:19:"Install the module.";s:5:"flags";a:0:{}}s:16:"get_entry_points";a:6:{s:8:"filename";s:28:"site/pages/modules/polls.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:28:"site/pages/modules/polls.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:28:"site/pages/modules/polls.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:10:"view_polls";a:6:{s:8:"filename";s:28:"site/pages/modules/polls.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"view_polls";s:11:"description";s:31:"The UI to view a list of polls.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:4:"view";a:6:{s:8:"filename";s:28:"site/pages/modules/polls.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"view";s:11:"description";s:22:"The UI to view a poll.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:12:"Module_polls";s:7:"comment";b:1;}s:15:"Module_purchase";a:3:{s:9:"functions";a:14:{s:4:"info";a:6:{s:8:"filename";s:31:"site/pages/modules/purchase.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:9:"uninstall";a:5:{s:8:"filename";s:31:"site/pages/modules/purchase.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"uninstall";s:11:"description";s:21:"Uninstall the module.";s:5:"flags";a:0:{}}s:7:"install";a:5:{s:8:"filename";s:31:"site/pages/modules/purchase.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:12:"upgrade_from";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"What version we're upgrading from (null: new install)";s:11:"phpdoc_name";s:12:"upgrade_from";}i:1;a:7:{s:4:"name";s:17:"upgrade_from_hack";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:94:"What hack version we're upgrading from (null: new-install/not-upgrading-from-a-hacked-version)";s:11:"phpdoc_name";s:17:"upgrade_from_hack";}}s:4:"name";s:7:"install";s:11:"description";s:19:"Install the module.";s:5:"flags";a:0:{}}s:16:"get_entry_points";a:6:{s:8:"filename";s:31:"site/pages/modules/purchase.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:31:"site/pages/modules/purchase.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:31:"site/pages/modules/purchase.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:5:"_wrap";a:6:{s:8:"filename";s:31:"site/pages/modules/purchase.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"content";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:8:"To wrap.";s:11:"phpdoc_name";s:7:"content";}i:1;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:17:"The title to use.";s:11:"phpdoc_name";s:5:"title";}i:2;a:5:{s:4:"name";s:3:"url";s:3:"ref";b:0;s:4:"type";s:6:"?mixed";s:11:"description";s:24:"URL (null: no next URL).";s:11:"phpdoc_name";s:3:"url";}i:3;a:7:{s:4:"name";s:3:"get";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:24:"Whether it is a GET form";s:11:"phpdoc_name";s:3:"get";}}s:4:"name";s:5:"_wrap";s:11:"description";s:48:"Wrap-up so as to remove redundancy in templates.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:8:"Wrapped.";}}s:6:"choose";a:6:{s:8:"filename";s:31:"site/pages/modules/purchase.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"choose";s:11:"description";s:20:"Choose product step.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:7:"message";a:6:{s:8:"filename";s:31:"site/pages/modules/purchase.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"message";s:11:"description";s:27:"Message about product step.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:5:"terms";a:6:{s:8:"filename";s:31:"site/pages/modules/purchase.php";s:10:"parameters";a:0:{}s:4:"name";s:5:"terms";s:11:"description";s:26:"Terms and conditions step.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:7:"details";a:6:{s:8:"filename";s:31:"site/pages/modules/purchase.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"details";s:11:"description";s:28:"Details about purchase step.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:3:"pay";a:6:{s:8:"filename";s:31:"site/pages/modules/purchase.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"pay";s:11:"description";s:13:"Payment step.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:6:"finish";a:6:{s:8:"filename";s:31:"site/pages/modules/purchase.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"finish";s:11:"description";s:12:"Finish step.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:19:"_check_availability";a:6:{s:8:"filename";s:31:"site/pages/modules/purchase.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"type_code";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The product code.";s:11:"phpdoc_name";s:9:"type_code";}}s:4:"name";s:19:"_check_availability";s:11:"description";s:59:"Check to see if a product is available to the current user.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:30:"Error screen (null: no error).";}}}s:4:"name";s:15:"Module_purchase";s:7:"comment";b:1;}s:11:"Module_quiz";a:3:{s:9:"functions";a:10:{s:4:"info";a:6:{s:8:"filename";s:27:"site/pages/modules/quiz.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:9:"uninstall";a:5:{s:8:"filename";s:27:"site/pages/modules/quiz.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"uninstall";s:11:"description";s:21:"Uninstall the module.";s:5:"flags";a:0:{}}s:7:"install";a:5:{s:8:"filename";s:27:"site/pages/modules/quiz.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:12:"upgrade_from";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"What version we're upgrading from (null: new install)";s:11:"phpdoc_name";s:12:"upgrade_from";}i:1;a:7:{s:4:"name";s:17:"upgrade_from_hack";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:94:"What hack version we're upgrading from (null: new-install/not-upgrading-from-a-hacked-version)";s:11:"phpdoc_name";s:17:"upgrade_from_hack";}}s:4:"name";s:7:"install";s:11:"description";s:19:"Install the module.";s:5:"flags";a:0:{}}s:16:"get_entry_points";a:6:{s:8:"filename";s:27:"site/pages/modules/quiz.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:27:"site/pages/modules/quiz.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:27:"site/pages/modules/quiz.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:7:"archive";a:6:{s:8:"filename";s:27:"site/pages/modules/quiz.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"archive";s:11:"description";s:39:"The UI to browse quizzes/surveys/tests.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:18:"enforcement_checks";a:5:{s:8:"filename";s:27:"site/pages/modules/quiz.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"quiz";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:22:"The DB row of the quiz";s:11:"phpdoc_name";s:4:"quiz";}}s:4:"name";s:18:"enforcement_checks";s:11:"description";s:88:"Make sure the entry rules of a quiz are not being broken. Exits when they may not enter.";s:5:"flags";a:0:{}}s:7:"do_quiz";a:6:{s:8:"filename";s:27:"site/pages/modules/quiz.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"do_quiz";s:11:"description";s:24:"The UI for doing a quiz.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:8:"_do_quiz";a:6:{s:8:"filename";s:27:"site/pages/modules/quiz.php";s:10:"parameters";a:0:{}s:4:"name";s:8:"_do_quiz";s:11:"description";s:33:"Actualiser: process quiz results.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:11:"Module_quiz";s:7:"comment";b:1;}s:13:"Module_search";a:3:{s:9:"functions";a:9:{s:4:"info";a:6:{s:8:"filename";s:29:"site/pages/modules/search.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:9:"uninstall";a:5:{s:8:"filename";s:29:"site/pages/modules/search.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"uninstall";s:11:"description";s:21:"Uninstall the module.";s:5:"flags";a:0:{}}s:7:"install";a:5:{s:8:"filename";s:29:"site/pages/modules/search.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:12:"upgrade_from";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"What version we're upgrading from (null: new install)";s:11:"phpdoc_name";s:12:"upgrade_from";}i:1;a:7:{s:4:"name";s:17:"upgrade_from_hack";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:94:"What hack version we're upgrading from (null: new-install/not-upgrading-from-a-hacked-version)";s:11:"phpdoc_name";s:17:"upgrade_from_hack";}}s:4:"name";s:7:"install";s:11:"description";s:19:"Install the module.";s:5:"flags";a:0:{}}s:16:"get_entry_points";a:6:{s:8:"filename";s:29:"site/pages/modules/search.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:29:"site/pages/modules/search.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:29:"site/pages/modules/search.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:4:"form";a:6:{s:8:"filename";s:29:"site/pages/modules/search.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"form";s:11:"description";s:22:"The UI to do a search.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:18:"_is_boolean_search";a:6:{s:8:"filename";s:29:"site/pages/modules/search.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"_is_boolean_search";s:11:"description";s:43:"Find whether we are doing a boolean search.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Whether we are";}}s:7:"results";a:6:{s:8:"filename";s:29:"site/pages/modules/search.php";s:10:"parameters";a:8:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:56:"Codename for what's being searched (blank: mixed search)";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:6:"author";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:11:"Author name";s:11:"phpdoc_name";s:6:"author";}i:2;a:5:{s:4:"name";s:9:"author_id";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:28:"Author ID (null: none given)";s:11:"phpdoc_name";s:9:"author_id";}i:3;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:51:"Cutoff date (TIME or a pair representing the range)";s:11:"phpdoc_name";s:6:"cutoff";}i:4;a:5:{s:4:"name";s:4:"sort";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:8:"Sort key";s:11:"phpdoc_name";s:4:"sort";}i:5;a:6:{s:4:"name";s:9:"direction";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"Sort direction";s:11:"phpdoc_name";s:9:"direction";s:3:"set";s:8:"ASC DESC";}i:6;a:5:{s:4:"name";s:11:"only_titles";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to only search titles";s:11:"phpdoc_name";s:11:"only_titles";}i:7;a:5:{s:4:"name";s:12:"search_under";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:50:"Comma-separated list of categories to search under";s:11:"phpdoc_name";s:12:"search_under";}}s:4:"name";s:7:"results";s:11:"description";s:27:"The actualiser of a search.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:61:"A triple: The results, results browser, the number of results";}}}s:4:"name";s:13:"Module_search";s:7:"comment";b:1;}s:15:"Module_shopping";a:3:{s:9:"functions";a:14:{s:4:"info";a:6:{s:8:"filename";s:31:"site/pages/modules/shopping.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:9:"uninstall";a:5:{s:8:"filename";s:31:"site/pages/modules/shopping.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"uninstall";s:11:"description";s:21:"Uninstall the module.";s:5:"flags";a:0:{}}s:7:"install";a:5:{s:8:"filename";s:31:"site/pages/modules/shopping.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:12:"upgrade_from";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"What version we're upgrading from (null: new install)";s:11:"phpdoc_name";s:12:"upgrade_from";}i:1;a:7:{s:4:"name";s:17:"upgrade_from_hack";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:94:"What hack version we're upgrading from (null: new-install/not-upgrading-from-a-hacked-version)";s:11:"phpdoc_name";s:17:"upgrade_from_hack";}}s:4:"name";s:7:"install";s:11:"description";s:19:"Install the module.";s:5:"flags";a:0:{}}s:16:"get_entry_points";a:6:{s:8:"filename";s:31:"site/pages/modules/shopping.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:31:"site/pages/modules/shopping.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:31:"site/pages/modules/shopping.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:18:"view_shopping_cart";a:6:{s:8:"filename";s:31:"site/pages/modules/shopping.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"view_shopping_cart";s:11:"description";s:28:"The UI to show shopping cart";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:16:"add_item_to_cart";a:6:{s:8:"filename";s:31:"site/pages/modules/shopping.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"add_item_to_cart";s:11:"description";s:24:"Add an item to the cart.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:11:"update_cart";a:6:{s:8:"filename";s:31:"site/pages/modules/shopping.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"update_cart";s:11:"description";s:16:"Update the cart.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:10:"empty_cart";a:6:{s:8:"filename";s:31:"site/pages/modules/shopping.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"empty_cart";s:11:"description";s:24:"Empty the shopping cart.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:4:"wrap";a:6:{s:8:"filename";s:31:"site/pages/modules/shopping.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:7:"content";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:8:"To wrap.";s:11:"phpdoc_name";s:7:"content";}i:1;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:17:"The title to use.";s:11:"phpdoc_name";s:5:"title";}i:2;a:5:{s:4:"name";s:3:"url";s:3:"ref";b:0;s:4:"type";s:6:"?mixed";s:11:"description";s:24:"URL (null: no next URL).";s:11:"phpdoc_name";s:3:"url";}i:3;a:7:{s:4:"name";s:3:"get";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:24:"Whether it is a GET form";s:11:"phpdoc_name";s:3:"get";}}s:4:"name";s:4:"wrap";s:11:"description";s:48:"Wrap-up so as to remove redundancy in templates.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:8:"Wrapped.";}}s:6:"finish";a:6:{s:8:"filename";s:31:"site/pages/modules/shopping.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"finish";s:11:"description";s:12:"Finish step.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:9:"my_orders";a:6:{s:8:"filename";s:31:"site/pages/modules/shopping.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"my_orders";s:11:"description";s:18:"Show all my orders";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:14:"The interface.";}}s:9:"order_det";a:6:{s:8:"filename";s:31:"site/pages/modules/shopping.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"order_det";s:11:"description";s:21:"Show an order details";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:14:"The interface.";}}}s:4:"name";s:15:"Module_shopping";s:7:"comment";b:1;}s:12:"Module_staff";a:3:{s:9:"functions";a:8:{s:4:"info";a:6:{s:8:"filename";s:28:"site/pages/modules/staff.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:16:"get_entry_points";a:6:{s:8:"filename";s:28:"site/pages/modules/staff.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:9:"uninstall";a:5:{s:8:"filename";s:28:"site/pages/modules/staff.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"uninstall";s:11:"description";s:21:"Uninstall the module.";s:5:"flags";a:0:{}}s:7:"install";a:5:{s:8:"filename";s:28:"site/pages/modules/staff.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:12:"upgrade_from";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"What version we're upgrading from (null: new install)";s:11:"phpdoc_name";s:12:"upgrade_from";}i:1;a:7:{s:4:"name";s:17:"upgrade_from_hack";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:94:"What hack version we're upgrading from (null: new-install/not-upgrading-from-a-hacked-version)";s:11:"phpdoc_name";s:17:"upgrade_from_hack";}}s:4:"name";s:7:"install";s:11:"description";s:19:"Install the module.";s:5:"flags";a:0:{}}s:7:"pre_run";a:6:{s:8:"filename";s:28:"site/pages/modules/staff.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:28:"site/pages/modules/staff.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:12:"do_all_staff";a:6:{s:8:"filename";s:28:"site/pages/modules/staff.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"do_all_staff";s:11:"description";s:28:"The UI to view a staff list.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:15:"do_staff_member";a:6:{s:8:"filename";s:28:"site/pages/modules/staff.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"do_staff_member";s:11:"description";s:30:"The UI to view a staff member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:12:"Module_staff";s:7:"comment";b:1;}s:20:"Module_subscriptions";a:3:{s:9:"functions";a:8:{s:4:"info";a:6:{s:8:"filename";s:36:"site/pages/modules/subscriptions.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:9:"uninstall";a:5:{s:8:"filename";s:36:"site/pages/modules/subscriptions.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"uninstall";s:11:"description";s:21:"Uninstall the module.";s:5:"flags";a:0:{}}s:7:"install";a:5:{s:8:"filename";s:36:"site/pages/modules/subscriptions.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:12:"upgrade_from";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"What version we're upgrading from (null: new install)";s:11:"phpdoc_name";s:12:"upgrade_from";}i:1;a:7:{s:4:"name";s:17:"upgrade_from_hack";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:94:"What hack version we're upgrading from (null: new-install/not-upgrading-from-a-hacked-version)";s:11:"phpdoc_name";s:17:"upgrade_from_hack";}}s:4:"name";s:7:"install";s:11:"description";s:19:"Install the module.";s:5:"flags";a:0:{}}s:16:"get_entry_points";a:6:{s:8:"filename";s:36:"site/pages/modules/subscriptions.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:36:"site/pages/modules/subscriptions.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:36:"site/pages/modules/subscriptions.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:2:"my";a:6:{s:8:"filename";s:36:"site/pages/modules/subscriptions.php";s:10:"parameters";a:0:{}s:4:"name";s:2:"my";s:11:"description";s:22:"Show my subscriptions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:14:"The interface.";}}s:6:"cancel";a:6:{s:8:"filename";s:36:"site/pages/modules/subscriptions.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"cancel";s:11:"description";s:22:"Cancel a subscription.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:14:"The interface.";}}}s:4:"name";s:20:"Module_subscriptions";s:7:"comment";b:1;}s:14:"Module_tickets";a:3:{s:9:"functions";a:21:{s:4:"info";a:6:{s:8:"filename";s:30:"site/pages/modules/tickets.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:9:"uninstall";a:5:{s:8:"filename";s:30:"site/pages/modules/tickets.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"uninstall";s:11:"description";s:21:"Uninstall the module.";s:5:"flags";a:0:{}}s:7:"install";a:5:{s:8:"filename";s:30:"site/pages/modules/tickets.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:12:"upgrade_from";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"What version we're upgrading from (null: new install)";s:11:"phpdoc_name";s:12:"upgrade_from";}i:1;a:7:{s:4:"name";s:17:"upgrade_from_hack";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:94:"What hack version we're upgrading from (null: new-install/not-upgrading-from-a-hacked-version)";s:11:"phpdoc_name";s:17:"upgrade_from_hack";}}s:4:"name";s:7:"install";s:11:"description";s:19:"Install the module.";s:5:"flags";a:0:{}}s:16:"get_entry_points";a:6:{s:8:"filename";s:30:"site/pages/modules/tickets.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:30:"site/pages/modules/tickets.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:30:"site/pages/modules/tickets.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:18:"get_ticket_type_id";a:6:{s:8:"filename";s:30:"site/pages/modules/tickets.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"get_ticket_type_id";s:11:"description";s:33:"Find the selected ticket type ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:41:"The ticket type ID (null: none specified)";}}s:16:"do_choose_ticket";a:6:{s:8:"filename";s:30:"site/pages/modules/tickets.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"do_choose_ticket";s:11:"description";s:43:"The UI to show support tickets we may view.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:18:"_render_ticket_row";a:6:{s:8:"filename";s:30:"site/pages/modules/tickets.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"topic";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"Ticket details (from forum API)";s:11:"phpdoc_name";s:5:"topic";}}s:4:"name";s:18:"_render_ticket_row";s:11:"description";s:25:"Render a ticket link row.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:70:"A tuple: Ticket row (Tempcode), Ticket type (ID), Ticket type (String)";}}s:9:"do_ticket";a:6:{s:8:"filename";s:30:"site/pages/modules/tickets.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"do_ticket";s:11:"description";s:85:"The UI to either show an existing ticket and allow a reply, or to start a new ticket.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:20:"toggle_ticket_closed";a:6:{s:8:"filename";s:30:"site/pages/modules/tickets.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"toggle_ticket_closed";s:11:"description";s:49:"Actualise to toggle the closed state of a ticket.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:16:"do_update_ticket";a:6:{s:8:"filename";s:30:"site/pages/modules/tickets.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"do_update_ticket";s:11:"description";s:60:"Actualise ticket creation/reply, then show the ticket again.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:9:"do_search";a:6:{s:8:"filename";s:30:"site/pages/modules/tickets.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:10:"Page title";s:11:"phpdoc_name";s:5:"title";}i:1;a:5:{s:4:"name";s:9:"ticket_id";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:26:"Ticket ID we'd be creating";s:11:"phpdoc_name";s:9:"ticket_id";}i:2;a:5:{s:4:"name";s:7:"content";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:26:"What is being searched for";s:11:"phpdoc_name";s:7:"content";}}s:4:"name";s:9:"do_search";s:11:"description";s:73:"Check for existing FAQs matching a ticket to be submitted, via searching.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:43:"The search results (null: could not search)";}}s:23:"set_ticket_extra_access";a:6:{s:8:"filename";s:30:"site/pages/modules/tickets.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"set_ticket_extra_access";s:11:"description";s:29:"UI for setting ticket access.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:24:"_set_ticket_extra_access";a:6:{s:8:"filename";s:30:"site/pages/modules/tickets.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"_set_ticket_extra_access";s:11:"description";s:37:"Actualiser for setting ticket access.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:4:"edit";a:6:{s:8:"filename";s:30:"site/pages/modules/tickets.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"edit";s:11:"description";s:29:"UI for editing a ticket type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:5:"_edit";a:6:{s:8:"filename";s:30:"site/pages/modules/tickets.php";s:10:"parameters";a:0:{}s:4:"name";s:5:"_edit";s:11:"description";s:37:"Actualiser for setting ticket access.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:5:"merge";a:6:{s:8:"filename";s:30:"site/pages/modules/tickets.php";s:10:"parameters";a:0:{}s:4:"name";s:5:"merge";s:11:"description";s:39:"UI for merging one ticket into another.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:6:"_merge";a:6:{s:8:"filename";s:30:"site/pages/modules/tickets.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"_merge";s:11:"description";s:47:"Actualiser for merging one ticket into another.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:6:"assign";a:6:{s:8:"filename";s:30:"site/pages/modules/tickets.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"assign";s:11:"description";s:16:"Assign a ticket.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:8:"unassign";a:6:{s:8:"filename";s:30:"site/pages/modules/tickets.php";s:10:"parameters";a:0:{}s:4:"name";s:8:"unassign";s:11:"description";s:18:"Unassign a ticket.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:14:"Module_tickets";s:7:"comment";b:1;}s:19:"Module_users_online";a:3:{s:9:"functions";a:4:{s:4:"info";a:6:{s:8:"filename";s:35:"site/pages/modules/users_online.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:16:"get_entry_points";a:6:{s:8:"filename";s:35:"site/pages/modules/users_online.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:35:"site/pages/modules/users_online.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:35:"site/pages/modules/users_online.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:19:"Module_users_online";s:7:"comment";b:1;}s:15:"Module_warnings";a:3:{s:9:"functions";a:19:{s:16:"get_wrapper_icon";a:6:{s:8:"filename";s:31:"site/pages/modules/warnings.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_wrapper_icon";s:11:"description";s:153:"Find icon for this module, specifically to find an icon for the module's main sitemap node. Defined when there is no entry-point for a default page call.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:5:"Icon.";}}s:16:"get_entry_points";a:6:{s:8:"filename";s:31:"site/pages/modules/warnings.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:31:"site/pages/modules/warnings.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:9:"top_level";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:77:"Whether this is running at the top level, prior to having sub-objects called.";s:11:"phpdoc_name";s:9:"top_level";}i:1;a:7:{s:4:"name";s:4:"type";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:80:"The screen type to consider for metadata purposes (null: read from environment).";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:9:"run_start";a:6:{s:8:"filename";s:31:"site/pages/modules/warnings.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:28:"The type of module execution";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:9:"run_start";s:11:"description";s:31:"Standard crud_module run_start.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:21:"The output of the run";}}s:7:"history";a:6:{s:8:"filename";s:31:"site/pages/modules/warnings.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"history";s:11:"description";s:49:"View the warning/punishment history for a member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:21:"The output of the run";}}s:11:"undo_charge";a:6:{s:8:"filename";s:31:"site/pages/modules/warnings.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"undo_charge";s:11:"description";s:53:"Actualiser to undo a certain type of punitive action.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:22:"Result (redirect page)";}}s:14:"undo_probation";a:6:{s:8:"filename";s:31:"site/pages/modules/warnings.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"undo_probation";s:11:"description";s:53:"Actualiser to undo a certain type of punitive action.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:22:"Result (redirect page)";}}s:14:"undo_banned_ip";a:6:{s:8:"filename";s:31:"site/pages/modules/warnings.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"undo_banned_ip";s:11:"description";s:53:"Actualiser to undo a certain type of punitive action.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:22:"Result (redirect page)";}}s:18:"undo_banned_member";a:6:{s:8:"filename";s:31:"site/pages/modules/warnings.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"undo_banned_member";s:11:"description";s:53:"Actualiser to undo a certain type of punitive action.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:22:"Result (redirect page)";}}s:23:"undo_silence_from_topic";a:6:{s:8:"filename";s:31:"site/pages/modules/warnings.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"undo_silence_from_topic";s:11:"description";s:53:"Actualiser to undo a certain type of punitive action.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:22:"Result (redirect page)";}}s:23:"undo_silence_from_forum";a:6:{s:8:"filename";s:31:"site/pages/modules/warnings.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"undo_silence_from_forum";s:11:"description";s:53:"Actualiser to undo a certain type of punitive action.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:22:"Result (redirect page)";}}s:15:"get_form_fields";a:6:{s:8:"filename";s:31:"site/pages/modules/warnings.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:3:"new";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:45:"Whether it is a new warning/punishment record";s:11:"phpdoc_name";s:3:"new";}i:1;a:7:{s:4:"name";s:11:"explanation";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:49:"The explanation for the warning/punishment record";s:11:"phpdoc_name";s:11:"explanation";}i:2;a:7:{s:4:"name";s:10:"is_warning";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:37:"Whether to make this a formal warning";s:11:"phpdoc_name";s:10:"is_warning";}i:3;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:58:"The member the warning is for (null: get from environment)";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:15:"get_form_fields";s:11:"description";s:47:"Get Tempcode for a warning adding/editing form.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: the Tempcode for the visible fields, and the Tempcode for the hidden fields";}}s:34:"create_selection_list_choose_table";a:6:{s:8:"filename";s:31:"site/pages/modules/warnings.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"url_map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:55:"Details to go to build_url for link to the next screen.";s:11:"phpdoc_name";s:7:"url_map";}}s:4:"name";s:34:"create_selection_list_choose_table";s:11:"description";s:36:"Standard crud_module table function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:104:"A quartet: The choose table, Whether re-ordering is supported from this screen, Search URL, Archive URL.";}}s:29:"create_selection_list_entries";a:6:{s:8:"filename";s:31:"site/pages/modules/warnings.php";s:10:"parameters";a:0:{}s:4:"name";s:29:"create_selection_list_entries";s:11:"description";s:35:"Standard crud_module list function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:18:"The selection list";}}s:17:"fill_in_edit_form";a:6:{s:8:"filename";s:31:"site/pages/modules/warnings.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:17:"fill_in_edit_form";s:11:"description";s:38:"Standard crud_module edit form filler.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:83:"A pair: the Tempcode for the visible fields, and the Tempcode for the hidden fields";}}s:17:"add_actualisation";a:6:{s:8:"filename";s:31:"site/pages/modules/warnings.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"add_actualisation";s:11:"description";s:36:"Standard crud_module add actualiser.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"The entry added";}}s:18:"edit_actualisation";a:5:{s:8:"filename";s:31:"site/pages/modules/warnings.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The entry being edited";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:18:"edit_actualisation";s:11:"description";s:37:"Standard crud_module edit actualiser.";s:5:"flags";a:0:{}}s:13:"get_submitter";a:6:{s:8:"filename";s:31:"site/pages/modules/warnings.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:43:"The entry for which the submitter is sought";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:13:"get_submitter";s:11:"description";s:38:"Standard crud_module submitter getter.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:97:"The submitter, and the time of submission (null submission time implies no known submission time)";}}s:20:"delete_actualisation";a:5:{s:8:"filename";s:31:"site/pages/modules/warnings.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"The entry being deleted";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:20:"delete_actualisation";s:11:"description";s:39:"Standard crud_module delete actualiser.";s:5:"flags";a:0:{}}}s:4:"name";s:15:"Module_warnings";s:7:"comment";b:1;}s:11:"Module_wiki";a:3:{s:9:"functions";a:18:{s:4:"info";a:6:{s:8:"filename";s:27:"site/pages/modules/wiki.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:9:"uninstall";a:5:{s:8:"filename";s:27:"site/pages/modules/wiki.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"uninstall";s:11:"description";s:21:"Uninstall the module.";s:5:"flags";a:0:{}}s:7:"install";a:5:{s:8:"filename";s:27:"site/pages/modules/wiki.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:12:"upgrade_from";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"What version we're upgrading from (null: new install)";s:11:"phpdoc_name";s:12:"upgrade_from";}i:1;a:7:{s:4:"name";s:17:"upgrade_from_hack";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:94:"What hack version we're upgrading from (null: new-install/not-upgrading-from-a-hacked-version)";s:11:"phpdoc_name";s:17:"upgrade_from_hack";}}s:4:"name";s:7:"install";s:11:"description";s:19:"Install the module.";s:5:"flags";a:0:{}}s:16:"get_entry_points";a:6:{s:8:"filename";s:27:"site/pages/modules/wiki.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:27:"site/pages/modules/wiki.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:27:"site/pages/modules/wiki.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:6:"random";a:6:{s:8:"filename";s:27:"site/pages/modules/wiki.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"random";s:11:"description";s:26:"Redirect to a random page.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:4:"page";a:6:{s:8:"filename";s:27:"site/pages/modules/wiki.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"page";s:11:"description";s:22:"The UI to show a page.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:22:"_render_screen_buttons";a:6:{s:8:"filename";s:27:"site/pages/modules/wiki.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:5:"chain";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:43:"The ID chain being used to get to this page";s:11:"phpdoc_name";s:5:"chain";}i:1;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:45:"The ID of the page we are showing the menu on";s:11:"phpdoc_name";s:2:"id";}i:2;a:5:{s:4:"name";s:17:"include_expansion";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:51:"Whether to include the expansion/contraction button";s:11:"phpdoc_name";s:17:"include_expansion";}i:3;a:7:{s:4:"name";s:8:"may_post";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:76:"Whether posting is generally allowed (may be passed false if too many posts)";s:11:"phpdoc_name";s:8:"may_post";}}s:4:"name";s:22:"_render_screen_buttons";s:11:"description";s:50:"Show the buttons on the Wiki+ page viewing screen.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:19:"The button Tempcode";}}s:9:"revisions";a:6:{s:8:"filename";s:27:"site/pages/modules/wiki.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"revisions";s:11:"description";s:92:"The UI to show revisions.More details are shown in the actionlog, which is linked from here.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:16:"_render_revision";a:6:{s:8:"filename";s:27:"site/pages/modules/wiki.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"revision";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"A revision map.";s:11:"phpdoc_name";s:8:"revision";}}s:4:"name";s:16:"_render_revision";s:11:"description";s:18:"Render a revision.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:45:"A rendered revision row (null: won't render).";}}s:11:"get_markers";a:6:{s:8:"filename";s:27:"site/pages/modules/wiki.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_markers";s:11:"description";s:39:"Get markers of posts from the POST/GET.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:18:"A list of markers.";}}s:23:"do_wiki_merge_interface";a:6:{s:8:"filename";s:27:"site/pages/modules/wiki.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"do_wiki_merge_interface";s:11:"description";s:31:"The UI for merging Wiki+ posts.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"The UI.";}}s:13:"do_wiki_merge";a:6:{s:8:"filename";s:27:"site/pages/modules/wiki.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"do_wiki_merge";s:11:"description";s:39:"The actualiser for merging Wiki+ posts.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"The UI.";}}s:4:"move";a:6:{s:8:"filename";s:27:"site/pages/modules/wiki.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"move";s:11:"description";s:31:"The UI for moving a Wiki+ post.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"The UI.";}}s:5:"_move";a:6:{s:8:"filename";s:27:"site/pages/modules/wiki.php";s:10:"parameters";a:0:{}s:4:"name";s:5:"_move";s:11:"description";s:39:"The actualiser for moving a Wiki+ post.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"The UI.";}}s:4:"post";a:6:{s:8:"filename";s:27:"site/pages/modules/wiki.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"post";s:11:"description";s:31:"The UI for making a Wiki+ post.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"The UI.";}}s:5:"_post";a:6:{s:8:"filename";s:27:"site/pages/modules/wiki.php";s:10:"parameters";a:0:{}s:4:"name";s:5:"_post";s:11:"description";s:39:"The actualiser for making a Wiki+ post.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:7:"The UI.";}}}s:4:"name";s:11:"Module_wiki";s:7:"comment";b:1;}s:23:"Block_bottom_forum_news";a:3:{s:9:"functions";a:3:{s:4:"info";a:6:{s:8:"filename";s:36:"sources/blocks/bottom_forum_news.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:19:"caching_environment";a:6:{s:8:"filename";s:36:"sources/blocks/bottom_forum_news.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"caching_environment";s:11:"description";s:35:"Find caching details for the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:66:"Map of cache details (cache_on and ttl) (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:36:"sources/blocks/bottom_forum_news.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:23:"Block_bottom_forum_news";s:7:"comment";b:1;}s:17:"Block_bottom_news";a:3:{s:9:"functions";a:3:{s:4:"info";a:6:{s:8:"filename";s:30:"sources/blocks/bottom_news.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:19:"caching_environment";a:6:{s:8:"filename";s:30:"sources/blocks/bottom_news.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"caching_environment";s:11:"description";s:35:"Find caching details for the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:66:"Map of cache details (cache_on and ttl) (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:30:"sources/blocks/bottom_news.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:17:"Block_bottom_news";s:7:"comment";b:1;}s:16:"Block_bottom_rss";a:3:{s:9:"functions";a:3:{s:4:"info";a:6:{s:8:"filename";s:29:"sources/blocks/bottom_rss.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:19:"caching_environment";a:6:{s:8:"filename";s:29:"sources/blocks/bottom_rss.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"caching_environment";s:11:"description";s:35:"Find caching details for the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:66:"Map of cache details (cache_on and ttl) (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:29:"sources/blocks/bottom_rss.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:16:"Block_bottom_rss";s:7:"comment";b:1;}s:17:"Block_main_awards";a:3:{s:9:"functions";a:3:{s:4:"info";a:6:{s:8:"filename";s:30:"sources/blocks/main_awards.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:19:"caching_environment";a:6:{s:8:"filename";s:30:"sources/blocks/main_awards.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"caching_environment";s:11:"description";s:35:"Find caching details for the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:66:"Map of cache details (cache_on and ttl) (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:30:"sources/blocks/main_awards.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:17:"Block_main_awards";s:7:"comment";b:1;}s:22:"Block_main_banner_wave";a:3:{s:9:"functions";a:3:{s:4:"info";a:6:{s:8:"filename";s:35:"sources/blocks/main_banner_wave.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:19:"caching_environment";a:6:{s:8:"filename";s:35:"sources/blocks/main_banner_wave.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"caching_environment";s:11:"description";s:35:"Find caching details for the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:66:"Map of cache details (cache_on and ttl) (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:35:"sources/blocks/main_banner_wave.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:22:"Block_main_banner_wave";s:7:"comment";b:1;}s:21:"Block_main_bottom_bar";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:34:"sources/blocks/main_bottom_bar.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:34:"sources/blocks/main_bottom_bar.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:21:"Block_main_bottom_bar";s:7:"comment";b:1;}s:19:"Block_main_cc_embed";a:3:{s:9:"functions";a:3:{s:4:"info";a:6:{s:8:"filename";s:32:"sources/blocks/main_cc_embed.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:19:"caching_environment";a:6:{s:8:"filename";s:32:"sources/blocks/main_cc_embed.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"caching_environment";s:11:"description";s:35:"Find caching details for the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:66:"Map of cache details (cache_on and ttl) (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:32:"sources/blocks/main_cc_embed.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:19:"Block_main_cc_embed";s:7:"comment";b:1;}s:30:"Block_main_cns_involved_topics";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:43:"sources/blocks/main_cns_involved_topics.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:43:"sources/blocks/main_cns_involved_topics.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:30:"Block_main_cns_involved_topics";s:7:"comment";b:1;}s:32:"Block_main_comcode_page_children";a:3:{s:9:"functions";a:3:{s:4:"info";a:6:{s:8:"filename";s:45:"sources/blocks/main_comcode_page_children.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:19:"caching_environment";a:6:{s:8:"filename";s:45:"sources/blocks/main_comcode_page_children.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"caching_environment";s:11:"description";s:35:"Find caching details for the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:66:"Map of cache details (cache_on and ttl) (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:45:"sources/blocks/main_comcode_page_children.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:32:"Block_main_comcode_page_children";s:7:"comment";b:1;}s:19:"Block_main_comments";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:32:"sources/blocks/main_comments.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:32:"sources/blocks/main_comments.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:19:"Block_main_comments";s:7:"comment";b:1;}s:29:"Block_main_contact_catalogues";a:3:{s:9:"functions";a:3:{s:4:"info";a:6:{s:8:"filename";s:42:"sources/blocks/main_contact_catalogues.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:19:"caching_environment";a:6:{s:8:"filename";s:42:"sources/blocks/main_contact_catalogues.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"caching_environment";s:11:"description";s:35:"Find caching details for the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:66:"Map of cache details (cache_on and ttl) (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:42:"sources/blocks/main_contact_catalogues.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:29:"Block_main_contact_catalogues";s:7:"comment";b:1;}s:25:"Block_main_contact_simple";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:38:"sources/blocks/main_contact_simple.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:38:"sources/blocks/main_contact_simple.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:25:"Block_main_contact_simple";s:7:"comment";b:1;}s:21:"Block_main_contact_us";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:34:"sources/blocks/main_contact_us.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:34:"sources/blocks/main_contact_us.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:21:"Block_main_contact_us";s:7:"comment";b:1;}s:18:"Block_main_content";a:3:{s:9:"functions";a:4:{s:4:"info";a:6:{s:8:"filename";s:31:"sources/blocks/main_content.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:19:"caching_environment";a:6:{s:8:"filename";s:31:"sources/blocks/main_content.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"caching_environment";s:11:"description";s:35:"Find caching details for the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:66:"Map of cache details (cache_on and ttl) (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:31:"sources/blocks/main_content.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:12:"build_select";a:6:{s:8:"filename";s:31:"sources/blocks/main_content.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:6:"select";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:18:"The select string.";s:11:"phpdoc_name";s:6:"select";}i:1;a:5:{s:4:"name";s:4:"info";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:35:"Map of details of our content type.";s:11:"phpdoc_name";s:4:"info";}i:2;a:5:{s:4:"name";s:21:"category_field_select";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:49:"The field name of the category to select against.";s:11:"phpdoc_name";s:21:"category_field_select";}i:3;a:5:{s:4:"name";s:18:"category_is_string";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:33:"Whether the category is a string.";s:11:"phpdoc_name";s:18:"category_is_string";}}s:4:"name";s:12:"build_select";s:11:"description";s:27:"Make a select SQL fragment.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:13:"SQL fragment.";}}}s:4:"name";s:18:"Block_main_content";s:7:"comment";b:1;}s:28:"Block_main_content_filtering";a:3:{s:9:"functions";a:3:{s:4:"info";a:6:{s:8:"filename";s:41:"sources/blocks/main_content_filtering.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:41:"sources/blocks/main_content_filtering.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:27:"interpret_pairs_from_string";a:6:{s:8:"filename";s:41:"sources/blocks/main_content_filtering.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:3:"str";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:40:"Comma separated, equals separated, bits.";s:11:"phpdoc_name";s:3:"str";}i:1;a:7:{s:4:"name";s:9:"separator";s:7:"default";s:1:",";s:11:"default_raw";s:3:"','";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:26:"Separarator between pairs.";s:11:"phpdoc_name";s:9:"separator";}}s:4:"name";s:27:"interpret_pairs_from_string";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:8:"Mapping.";}}}s:4:"name";s:28:"Block_main_content_filtering";s:7:"comment";b:1;}s:16:"Block_main_count";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:29:"sources/blocks/main_count.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:29:"sources/blocks/main_count.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:16:"Block_main_count";s:7:"comment";b:1;}s:20:"Block_main_countdown";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:33:"sources/blocks/main_countdown.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:33:"sources/blocks/main_countdown.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:20:"Block_main_countdown";s:7:"comment";b:1;}s:30:"Block_main_custom_comcode_tags";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:43:"sources/blocks/main_custom_comcode_tags.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:43:"sources/blocks/main_custom_comcode_tags.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:30:"Block_main_custom_comcode_tags";s:7:"comment";b:1;}s:21:"Block_main_custom_gfx";a:3:{s:9:"functions";a:3:{s:4:"info";a:6:{s:8:"filename";s:34:"sources/blocks/main_custom_gfx.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:34:"sources/blocks/main_custom_gfx.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:9:"_do_image";a:6:{s:8:"filename";s:34:"sources/blocks/main_custom_gfx.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"cache_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:3:"ID.";s:11:"phpdoc_name";s:8:"cache_id";}i:1;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}i:2;a:5:{s:4:"name";s:8:"img_path";s:3:"ref";b:0;s:4:"type";s:7:"URLPATH";s:11:"description";s:15:"The image path.";s:11:"phpdoc_name";s:8:"img_path";}}s:4:"name";s:9:"_do_image";s:11:"description";s:44:"Utility method for writing text onto images.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:41:"URL of completed image OR Tempcode error.";}}}s:4:"name";s:21:"Block_main_custom_gfx";s:7:"comment";b:1;}s:19:"Block_main_db_notes";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:32:"sources/blocks/main_db_notes.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:32:"sources/blocks/main_db_notes.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:19:"Block_main_db_notes";s:7:"comment";b:1;}s:25:"Block_main_emoticon_codes";a:3:{s:9:"functions";a:3:{s:4:"info";a:6:{s:8:"filename";s:38:"sources/blocks/main_emoticon_codes.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:19:"caching_environment";a:6:{s:8:"filename";s:38:"sources/blocks/main_emoticon_codes.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"caching_environment";s:11:"description";s:35:"Find caching details for the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:66:"Map of cache details (cache_on and ttl) (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:38:"sources/blocks/main_emoticon_codes.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:25:"Block_main_emoticon_codes";s:7:"comment";b:1;}s:21:"Block_main_forum_news";a:3:{s:9:"functions";a:3:{s:4:"info";a:6:{s:8:"filename";s:34:"sources/blocks/main_forum_news.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:19:"caching_environment";a:6:{s:8:"filename";s:34:"sources/blocks/main_forum_news.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"caching_environment";s:11:"description";s:35:"Find caching details for the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:66:"Map of cache details (cache_on and ttl) (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:34:"sources/blocks/main_forum_news.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:21:"Block_main_forum_news";s:7:"comment";b:1;}s:23:"Block_main_forum_topics";a:3:{s:9:"functions";a:3:{s:4:"info";a:6:{s:8:"filename";s:36:"sources/blocks/main_forum_topics.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:19:"caching_environment";a:6:{s:8:"filename";s:36:"sources/blocks/main_forum_topics.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"caching_environment";s:11:"description";s:35:"Find caching details for the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:66:"Map of cache details (cache_on and ttl) (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:36:"sources/blocks/main_forum_topics.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:23:"Block_main_forum_topics";s:7:"comment";b:1;}s:23:"Block_main_friends_list";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:36:"sources/blocks/main_friends_list.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:36:"sources/blocks/main_friends_list.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:23:"Block_main_friends_list";s:7:"comment";b:1;}s:24:"Block_main_gallery_embed";a:3:{s:9:"functions";a:3:{s:4:"info";a:6:{s:8:"filename";s:37:"sources/blocks/main_gallery_embed.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:19:"caching_environment";a:6:{s:8:"filename";s:37:"sources/blocks/main_gallery_embed.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"caching_environment";s:11:"description";s:35:"Find caching details for the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:66:"Map of cache details (cache_on and ttl) (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:37:"sources/blocks/main_gallery_embed.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:24:"Block_main_gallery_embed";s:7:"comment";b:1;}s:19:"Block_main_greeting";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:32:"sources/blocks/main_greeting.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:32:"sources/blocks/main_greeting.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:19:"Block_main_greeting";s:7:"comment";b:1;}s:22:"Block_main_image_fader";a:3:{s:9:"functions";a:3:{s:4:"info";a:6:{s:8:"filename";s:35:"sources/blocks/main_image_fader.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:19:"caching_environment";a:6:{s:8:"filename";s:35:"sources/blocks/main_image_fader.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"caching_environment";s:11:"description";s:35:"Find caching details for the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:66:"Map of cache details (cache_on and ttl) (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:35:"sources/blocks/main_image_fader.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:22:"Block_main_image_fader";s:7:"comment";b:1;}s:27:"Block_main_image_fader_news";a:3:{s:9:"functions";a:3:{s:4:"info";a:6:{s:8:"filename";s:40:"sources/blocks/main_image_fader_news.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:19:"caching_environment";a:6:{s:8:"filename";s:40:"sources/blocks/main_image_fader_news.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"caching_environment";s:11:"description";s:35:"Find caching details for the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:66:"Map of cache details (cache_on and ttl) (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:40:"sources/blocks/main_image_fader_news.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:27:"Block_main_image_fader_news";s:7:"comment";b:1;}s:25:"Block_main_include_module";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:38:"sources/blocks/main_include_module.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:38:"sources/blocks/main_include_module.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:25:"Block_main_include_module";s:7:"comment";b:1;}s:23:"Block_main_leader_board";a:3:{s:9:"functions";a:5:{s:4:"info";a:6:{s:8:"filename";s:36:"sources/blocks/main_leader_board.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:19:"caching_environment";a:6:{s:8:"filename";s:36:"sources/blocks/main_leader_board.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"caching_environment";s:11:"description";s:35:"Find caching details for the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:66:"Map of cache details (cache_on and ttl) (null: block is disabled).";}}s:9:"uninstall";a:5:{s:8:"filename";s:36:"sources/blocks/main_leader_board.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"uninstall";s:11:"description";s:20:"Uninstall the block.";s:5:"flags";a:0:{}}s:7:"install";a:5:{s:8:"filename";s:36:"sources/blocks/main_leader_board.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:12:"upgrade_from";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"What version we're upgrading from (null: new install)";s:11:"phpdoc_name";s:12:"upgrade_from";}i:1;a:7:{s:4:"name";s:17:"upgrade_from_hack";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:94:"What hack version we're upgrading from (null: new-install/not-upgrading-from-a-hacked-version)";s:11:"phpdoc_name";s:17:"upgrade_from_hack";}}s:4:"name";s:7:"install";s:11:"description";s:18:"Install the block.";s:5:"flags";a:0:{}}s:3:"run";a:6:{s:8:"filename";s:36:"sources/blocks/main_leader_board.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:23:"Block_main_leader_board";s:7:"comment";b:1;}s:21:"Block_main_member_bar";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:34:"sources/blocks/main_member_bar.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:34:"sources/blocks/main_member_bar.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:21:"Block_main_member_bar";s:7:"comment";b:1;}s:18:"Block_main_members";a:3:{s:9:"functions";a:3:{s:4:"info";a:6:{s:8:"filename";s:31:"sources/blocks/main_members.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:19:"caching_environment";a:6:{s:8:"filename";s:31:"sources/blocks/main_members.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"caching_environment";s:11:"description";s:35:"Find caching details for the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:66:"Map of cache details (cache_on and ttl) (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:31:"sources/blocks/main_members.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:18:"Block_main_members";s:7:"comment";b:1;}s:24:"Block_main_multi_content";a:3:{s:9:"functions";a:6:{s:4:"info";a:6:{s:8:"filename";s:37:"sources/blocks/main_multi_content.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:19:"caching_environment";a:6:{s:8:"filename";s:37:"sources/blocks/main_multi_content.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"caching_environment";s:11:"description";s:35:"Find caching details for the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:66:"Map of cache details (cache_on and ttl) (null: block is disabled).";}}s:9:"uninstall";a:5:{s:8:"filename";s:37:"sources/blocks/main_multi_content.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"uninstall";s:11:"description";s:20:"Uninstall the block.";s:5:"flags";a:0:{}}s:7:"install";a:5:{s:8:"filename";s:37:"sources/blocks/main_multi_content.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:12:"upgrade_from";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"What version we're upgrading from (null: new install)";s:11:"phpdoc_name";s:12:"upgrade_from";}i:1;a:7:{s:4:"name";s:17:"upgrade_from_hack";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:94:"What hack version we're upgrading from (null: new-install/not-upgrading-from-a-hacked-version)";s:11:"phpdoc_name";s:17:"upgrade_from_hack";}}s:4:"name";s:7:"install";s:11:"description";s:18:"Install the block.";s:5:"flags";a:0:{}}s:3:"run";a:6:{s:8:"filename";s:37:"sources/blocks/main_multi_content.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:12:"build_select";a:6:{s:8:"filename";s:37:"sources/blocks/main_multi_content.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:6:"select";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:18:"The select string.";s:11:"phpdoc_name";s:6:"select";}i:1;a:5:{s:4:"name";s:4:"info";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:35:"Map of details of our content type.";s:11:"phpdoc_name";s:4:"info";}i:2;a:5:{s:4:"name";s:21:"category_field_select";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:49:"The field name of the category to select against.";s:11:"phpdoc_name";s:21:"category_field_select";}}s:4:"name";s:12:"build_select";s:11:"description";s:27:"Make a select SQL fragment.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:13:"SQL fragment.";}}}s:4:"name";s:24:"Block_main_multi_content";s:7:"comment";b:1;}s:15:"Block_main_news";a:3:{s:9:"functions";a:3:{s:4:"info";a:6:{s:8:"filename";s:28:"sources/blocks/main_news.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:19:"caching_environment";a:6:{s:8:"filename";s:28:"sources/blocks/main_news.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"caching_environment";s:11:"description";s:35:"Find caching details for the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:66:"Map of cache details (cache_on and ttl) (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:28:"sources/blocks/main_news.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:15:"Block_main_news";s:7:"comment";b:1;}s:28:"Block_main_newsletter_signup";a:3:{s:9:"functions";a:3:{s:4:"info";a:6:{s:8:"filename";s:41:"sources/blocks/main_newsletter_signup.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:19:"caching_environment";a:6:{s:8:"filename";s:41:"sources/blocks/main_newsletter_signup.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"caching_environment";s:11:"description";s:35:"Find caching details for the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:66:"Map of cache details (cache_on and ttl) (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:41:"sources/blocks/main_newsletter_signup.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:28:"Block_main_newsletter_signup";s:7:"comment";b:1;}s:16:"Block_main_notes";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:29:"sources/blocks/main_notes.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:29:"sources/blocks/main_notes.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:16:"Block_main_notes";s:7:"comment";b:1;}s:24:"Block_main_only_if_match";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:37:"sources/blocks/main_only_if_match.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:37:"sources/blocks/main_only_if_match.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:24:"Block_main_only_if_match";s:7:"comment";b:1;}s:34:"Block_main_personal_galleries_list";a:3:{s:9:"functions";a:3:{s:4:"info";a:6:{s:8:"filename";s:47:"sources/blocks/main_personal_galleries_list.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:47:"sources/blocks/main_personal_galleries_list.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:27:"attach_gallery_subgalleries";a:5:{s:8:"filename";s:47:"sources/blocks/main_personal_galleries_list.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:12:"gallery_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"Gallery name";s:11:"phpdoc_name";s:12:"gallery_name";}i:1;a:5:{s:4:"name";s:9:"galleries";s:3:"ref";b:1;s:4:"type";s:8:"Tempcode";s:11:"description";s:45:"The output goes in here (passed by reference)";s:11:"phpdoc_name";s:9:"galleries";}i:2;a:5:{s:4:"name";s:9:"member_id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:40:"The ID of the member who is being viewed";s:11:"phpdoc_name";s:9:"member_id";}i:3;a:5:{s:4:"name";s:17:"member_id_viewing";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:45:"The ID of the member who is doing the viewing";s:11:"phpdoc_name";s:17:"member_id_viewing";}}s:4:"name";s:27:"attach_gallery_subgalleries";s:11:"description";s:38:"Show subgalleries belonging to member.";s:5:"flags";a:0:{}}}s:4:"name";s:34:"Block_main_personal_galleries_list";s:7:"comment";b:1;}s:15:"Block_main_poll";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:28:"sources/blocks/main_poll.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:28:"sources/blocks/main_poll.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:15:"Block_main_poll";s:7:"comment";b:1;}s:27:"Block_main_pt_notifications";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:40:"sources/blocks/main_pt_notifications.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:40:"sources/blocks/main_pt_notifications.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:27:"Block_main_pt_notifications";s:7:"comment";b:1;}s:17:"Block_main_quotes";a:3:{s:9:"functions";a:4:{s:4:"info";a:6:{s:8:"filename";s:30:"sources/blocks/main_quotes.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:19:"caching_environment";a:6:{s:8:"filename";s:30:"sources/blocks/main_quotes.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"caching_environment";s:11:"description";s:35:"Find caching details for the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:66:"Map of cache details (cache_on and ttl) (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:30:"sources/blocks/main_quotes.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:15:"get_random_line";a:6:{s:8:"filename";s:30:"sources/blocks/main_quotes.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:12:"The filename";s:11:"phpdoc_name";s:8:"filename";}}s:4:"name";s:15:"get_random_line";s:11:"description";s:30:"Get a random line from a file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:15:"The random line";}}}s:4:"name";s:17:"Block_main_quotes";s:7:"comment";b:1;}s:17:"Block_main_rating";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:30:"sources/blocks/main_rating.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:30:"sources/blocks/main_rating.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:17:"Block_main_rating";s:7:"comment";b:1;}s:14:"Block_main_rss";a:3:{s:9:"functions";a:3:{s:4:"info";a:6:{s:8:"filename";s:27:"sources/blocks/main_rss.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:19:"caching_environment";a:6:{s:8:"filename";s:27:"sources/blocks/main_rss.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"caching_environment";s:11:"description";s:35:"Find caching details for the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:66:"Map of cache details (cache_on and ttl) (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:27:"sources/blocks/main_rss.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:14:"Block_main_rss";s:7:"comment";b:1;}s:25:"Block_main_screen_actions";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:38:"sources/blocks/main_screen_actions.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:38:"sources/blocks/main_screen_actions.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:25:"Block_main_screen_actions";s:7:"comment";b:1;}s:17:"Block_main_search";a:3:{s:9:"functions";a:3:{s:4:"info";a:6:{s:8:"filename";s:30:"sources/blocks/main_search.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:19:"caching_environment";a:6:{s:8:"filename";s:30:"sources/blocks/main_search.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"caching_environment";s:11:"description";s:35:"Find caching details for the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:66:"Map of cache details (cache_on and ttl) (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:30:"sources/blocks/main_search.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:17:"Block_main_search";s:7:"comment";b:1;}s:24:"Block_main_staff_actions";a:3:{s:9:"functions";a:5:{s:4:"info";a:6:{s:8:"filename";s:37:"sources/blocks/main_staff_actions.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:19:"caching_environment";a:6:{s:8:"filename";s:37:"sources/blocks/main_staff_actions.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"caching_environment";s:11:"description";s:35:"Find caching details for the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:66:"Map of cache details (cache_on and ttl) (null: block is disabled).";}}s:9:"uninstall";a:5:{s:8:"filename";s:37:"sources/blocks/main_staff_actions.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"uninstall";s:11:"description";s:20:"Uninstall the block.";s:5:"flags";a:0:{}}s:7:"install";a:5:{s:8:"filename";s:37:"sources/blocks/main_staff_actions.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:12:"upgrade_from";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"What version we're upgrading from (null: new install)";s:11:"phpdoc_name";s:12:"upgrade_from";}i:1;a:7:{s:4:"name";s:17:"upgrade_from_hack";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:94:"What hack version we're upgrading from (null: new-install/not-upgrading-from-a-hacked-version)";s:11:"phpdoc_name";s:17:"upgrade_from_hack";}}s:4:"name";s:7:"install";s:11:"description";s:18:"Install the block.";s:5:"flags";a:0:{}}s:3:"run";a:6:{s:8:"filename";s:37:"sources/blocks/main_staff_actions.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:24:"Block_main_staff_actions";s:7:"comment";b:1;}s:26:"Block_main_staff_checklist";a:3:{s:9:"functions";a:5:{s:4:"info";a:6:{s:8:"filename";s:39:"sources/blocks/main_staff_checklist.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:19:"caching_environment";a:6:{s:8:"filename";s:39:"sources/blocks/main_staff_checklist.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"caching_environment";s:11:"description";s:35:"Find caching details for the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:66:"Map of cache details (cache_on and ttl) (null: block is disabled).";}}s:9:"uninstall";a:5:{s:8:"filename";s:39:"sources/blocks/main_staff_checklist.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"uninstall";s:11:"description";s:20:"Uninstall the block.";s:5:"flags";a:0:{}}s:7:"install";a:5:{s:8:"filename";s:39:"sources/blocks/main_staff_checklist.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:12:"upgrade_from";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"What version we're upgrading from (null: new install)";s:11:"phpdoc_name";s:12:"upgrade_from";}i:1;a:7:{s:4:"name";s:17:"upgrade_from_hack";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:94:"What hack version we're upgrading from (null: new-install/not-upgrading-from-a-hacked-version)";s:11:"phpdoc_name";s:17:"upgrade_from_hack";}}s:4:"name";s:7:"install";s:11:"description";s:18:"Install the block.";s:5:"flags";a:0:{}}s:3:"run";a:6:{s:8:"filename";s:39:"sources/blocks/main_staff_checklist.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:26:"Block_main_staff_checklist";s:7:"comment";b:1;}s:22:"Block_main_staff_links";a:3:{s:9:"functions";a:5:{s:4:"info";a:6:{s:8:"filename";s:35:"sources/blocks/main_staff_links.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:9:"uninstall";a:5:{s:8:"filename";s:35:"sources/blocks/main_staff_links.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"uninstall";s:11:"description";s:20:"Uninstall the block.";s:5:"flags";a:0:{}}s:19:"caching_environment";a:6:{s:8:"filename";s:35:"sources/blocks/main_staff_links.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"caching_environment";s:11:"description";s:35:"Find caching details for the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:66:"Map of cache details (cache_on and ttl) (null: block is disabled).";}}s:7:"install";a:5:{s:8:"filename";s:35:"sources/blocks/main_staff_links.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:12:"upgrade_from";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"What version we're upgrading from (null: new install)";s:11:"phpdoc_name";s:12:"upgrade_from";}i:1;a:7:{s:4:"name";s:17:"upgrade_from_hack";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:94:"What hack version we're upgrading from (null: new-install/not-upgrading-from-a-hacked-version)";s:11:"phpdoc_name";s:17:"upgrade_from_hack";}}s:4:"name";s:7:"install";s:11:"description";s:18:"Install the block.";s:5:"flags";a:0:{}}s:3:"run";a:6:{s:8:"filename";s:35:"sources/blocks/main_staff_links.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:22:"Block_main_staff_links";s:7:"comment";b:1;}s:28:"Block_main_staff_new_version";a:3:{s:9:"functions";a:3:{s:4:"info";a:6:{s:8:"filename";s:41:"sources/blocks/main_staff_new_version.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:19:"caching_environment";a:6:{s:8:"filename";s:41:"sources/blocks/main_staff_new_version.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"caching_environment";s:11:"description";s:35:"Find caching details for the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:66:"Map of cache details (cache_on and ttl) (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:41:"sources/blocks/main_staff_new_version.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:28:"Block_main_staff_new_version";s:7:"comment";b:1;}s:21:"Block_main_staff_tips";a:3:{s:9:"functions";a:4:{s:4:"info";a:6:{s:8:"filename";s:34:"sources/blocks/main_staff_tips.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:9:"uninstall";a:5:{s:8:"filename";s:34:"sources/blocks/main_staff_tips.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"uninstall";s:11:"description";s:20:"Uninstall the block.";s:5:"flags";a:0:{}}s:7:"install";a:5:{s:8:"filename";s:34:"sources/blocks/main_staff_tips.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:12:"upgrade_from";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"What version we're upgrading from (null: new install)";s:11:"phpdoc_name";s:12:"upgrade_from";}i:1;a:7:{s:4:"name";s:17:"upgrade_from_hack";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:94:"What hack version we're upgrading from (null: new-install/not-upgrading-from-a-hacked-version)";s:11:"phpdoc_name";s:17:"upgrade_from_hack";}}s:4:"name";s:7:"install";s:11:"description";s:18:"Install the block.";s:5:"flags";a:0:{}}s:3:"run";a:6:{s:8:"filename";s:34:"sources/blocks/main_staff_tips.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:21:"Block_main_staff_tips";s:7:"comment";b:1;}s:20:"Block_main_top_sites";a:3:{s:9:"functions";a:3:{s:4:"info";a:6:{s:8:"filename";s:33:"sources/blocks/main_top_sites.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:19:"caching_environment";a:6:{s:8:"filename";s:33:"sources/blocks/main_top_sites.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"caching_environment";s:11:"description";s:35:"Find caching details for the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:66:"Map of cache details (cache_on and ttl) (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:33:"sources/blocks/main_top_sites.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:20:"Block_main_top_sites";s:7:"comment";b:1;}s:20:"Block_main_trackback";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:33:"sources/blocks/main_trackback.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:33:"sources/blocks/main_trackback.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:20:"Block_main_trackback";s:7:"comment";b:1;}s:10:"Block_menu";a:3:{s:9:"functions";a:3:{s:4:"info";a:6:{s:8:"filename";s:23:"sources/blocks/menu.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:19:"caching_environment";a:6:{s:8:"filename";s:23:"sources/blocks/menu.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"caching_environment";s:11:"description";s:35:"Find caching details for the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:66:"Map of cache details (cache_on and ttl) (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:23:"sources/blocks/menu.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:10:"Block_menu";s:7:"comment";b:1;}s:19:"Block_side_calendar";a:3:{s:9:"functions";a:4:{s:4:"info";a:6:{s:8:"filename";s:32:"sources/blocks/side_calendar.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:19:"caching_environment";a:6:{s:8:"filename";s:32:"sources/blocks/side_calendar.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"caching_environment";s:11:"description";s:35:"Find caching details for the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:66:"Map of cache details (cache_on and ttl) (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:32:"sources/blocks/side_calendar.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:10:"get_filter";a:6:{s:8:"filename";s:32:"sources/blocks/side_calendar.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:10:"filter_map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:44:"What to filter according to block parameters";s:11:"phpdoc_name";s:10:"filter_map";}i:1;a:5:{s:4:"name";s:14:"private_events";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:87:"Whether to show private events (1) or public events (0) (null: both public and private)";s:11:"phpdoc_name";s:14:"private_events";}}s:4:"name";s:10:"get_filter";s:11:"description";s:38:"Gets the type filter, if there is one.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:10:"The filter";}}}s:4:"name";s:19:"Block_side_calendar";s:7:"comment";b:1;}s:29:"Block_side_cns_private_topics";a:3:{s:9:"functions";a:3:{s:4:"info";a:6:{s:8:"filename";s:42:"sources/blocks/side_cns_private_topics.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:19:"caching_environment";a:6:{s:8:"filename";s:42:"sources/blocks/side_cns_private_topics.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"caching_environment";s:11:"description";s:35:"Find caching details for the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:66:"Map of cache details (cache_on and ttl) (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:42:"sources/blocks/side_cns_private_topics.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:29:"Block_side_cns_private_topics";s:7:"comment";b:1;}s:21:"Block_side_forum_news";a:3:{s:9:"functions";a:3:{s:4:"info";a:6:{s:8:"filename";s:34:"sources/blocks/side_forum_news.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:19:"caching_environment";a:6:{s:8:"filename";s:34:"sources/blocks/side_forum_news.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"caching_environment";s:11:"description";s:35:"Find caching details for the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:66:"Map of cache details (cache_on and ttl) (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:34:"sources/blocks/side_forum_news.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:21:"Block_side_forum_news";s:7:"comment";b:1;}s:18:"Block_side_friends";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:31:"sources/blocks/side_friends.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:31:"sources/blocks/side_friends.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:18:"Block_side_friends";s:7:"comment";b:1;}s:20:"Block_side_galleries";a:3:{s:9:"functions";a:4:{s:4:"info";a:6:{s:8:"filename";s:33:"sources/blocks/side_galleries.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:19:"caching_environment";a:6:{s:8:"filename";s:33:"sources/blocks/side_galleries.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"caching_environment";s:11:"description";s:35:"Find caching details for the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:66:"Map of cache details (cache_on and ttl) (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:33:"sources/blocks/side_galleries.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:6:"inside";a:6:{s:8:"filename";s:33:"sources/blocks/side_galleries.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:33:"The zone our gallery module is in";s:11:"phpdoc_name";s:4:"zone";}i:1;a:5:{s:4:"name";s:9:"galleries";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:22:"A list of gallery rows";s:11:"phpdoc_name";s:9:"galleries";}i:2;a:5:{s:4:"name";s:3:"tpl";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:43:"The template to use to show each subgallery";s:11:"phpdoc_name";s:3:"tpl";}i:3;a:5:{s:4:"name";s:10:"show_empty";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether to show empty galleries";s:11:"phpdoc_name";s:10:"show_empty";}}s:4:"name";s:6:"inside";s:11:"description";s:65:"Show a group of subgalleries for use in a compact tree structure.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:19:"The shown galleries";}}}s:4:"name";s:20:"Block_side_galleries";s:7:"comment";b:1;}s:19:"Block_side_language";a:3:{s:9:"functions";a:3:{s:4:"info";a:6:{s:8:"filename";s:32:"sources/blocks/side_language.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:19:"caching_environment";a:6:{s:8:"filename";s:32:"sources/blocks/side_language.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"caching_environment";s:11:"description";s:35:"Find caching details for the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:66:"Map of cache details (cache_on and ttl) (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:32:"sources/blocks/side_language.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:19:"Block_side_language";s:7:"comment";b:1;}s:18:"Block_side_network";a:3:{s:9:"functions";a:3:{s:4:"info";a:6:{s:8:"filename";s:31:"sources/blocks/side_network.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:19:"caching_environment";a:6:{s:8:"filename";s:31:"sources/blocks/side_network.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"caching_environment";s:11:"description";s:35:"Find caching details for the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:66:"Map of cache details (cache_on and ttl) (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:31:"sources/blocks/side_network.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:18:"Block_side_network";s:7:"comment";b:1;}s:15:"Block_side_news";a:3:{s:9:"functions";a:3:{s:4:"info";a:6:{s:8:"filename";s:28:"sources/blocks/side_news.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:19:"caching_environment";a:6:{s:8:"filename";s:28:"sources/blocks/side_news.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"caching_environment";s:11:"description";s:35:"Find caching details for the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:66:"Map of cache details (cache_on and ttl) (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:28:"sources/blocks/side_news.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:15:"Block_side_news";s:7:"comment";b:1;}s:23:"Block_side_news_archive";a:3:{s:9:"functions";a:3:{s:4:"info";a:6:{s:8:"filename";s:36:"sources/blocks/side_news_archive.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:19:"caching_environment";a:6:{s:8:"filename";s:36:"sources/blocks/side_news_archive.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"caching_environment";s:11:"description";s:35:"Find caching details for the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:66:"Map of cache details (cache_on and ttl) (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:36:"sources/blocks/side_news_archive.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:23:"Block_side_news_archive";s:7:"comment";b:1;}s:26:"Block_side_news_categories";a:3:{s:9:"functions";a:3:{s:4:"info";a:6:{s:8:"filename";s:39:"sources/blocks/side_news_categories.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:19:"caching_environment";a:6:{s:8:"filename";s:39:"sources/blocks/side_news_categories.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"caching_environment";s:11:"description";s:35:"Find caching details for the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:66:"Map of cache details (cache_on and ttl) (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:39:"sources/blocks/side_news_categories.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:26:"Block_side_news_categories";s:7:"comment";b:1;}s:25:"Block_side_personal_stats";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:38:"sources/blocks/side_personal_stats.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:38:"sources/blocks/side_personal_stats.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:25:"Block_side_personal_stats";s:7:"comment";b:1;}s:27:"Block_side_printer_friendly";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:40:"sources/blocks/side_printer_friendly.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:40:"sources/blocks/side_printer_friendly.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:27:"Block_side_printer_friendly";s:7:"comment";b:1;}s:14:"Block_side_rss";a:3:{s:9:"functions";a:3:{s:4:"info";a:6:{s:8:"filename";s:27:"sources/blocks/side_rss.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:19:"caching_environment";a:6:{s:8:"filename";s:27:"sources/blocks/side_rss.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"caching_environment";s:11:"description";s:35:"Find caching details for the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:66:"Map of cache details (cache_on and ttl) (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:27:"sources/blocks/side_rss.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:14:"Block_side_rss";s:7:"comment";b:1;}s:19:"Block_side_shoutbox";a:3:{s:9:"functions";a:3:{s:4:"info";a:6:{s:8:"filename";s:32:"sources/blocks/side_shoutbox.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:19:"caching_environment";a:6:{s:8:"filename";s:32:"sources/blocks/side_shoutbox.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"caching_environment";s:11:"description";s:35:"Find caching details for the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:66:"Map of cache details (cache_on and ttl) (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:32:"sources/blocks/side_shoutbox.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:19:"Block_side_shoutbox";s:7:"comment";b:1;}s:16:"Block_side_stats";a:3:{s:9:"functions";a:3:{s:4:"info";a:6:{s:8:"filename";s:29:"sources/blocks/side_stats.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:19:"caching_environment";a:6:{s:8:"filename";s:29:"sources/blocks/side_stats.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"caching_environment";s:11:"description";s:35:"Find caching details for the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:66:"Map of cache details (cache_on and ttl) (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:29:"sources/blocks/side_stats.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:16:"Block_side_stats";s:7:"comment";b:1;}s:20:"Block_side_tag_cloud";a:3:{s:9:"functions";a:3:{s:4:"info";a:6:{s:8:"filename";s:33:"sources/blocks/side_tag_cloud.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:19:"caching_environment";a:6:{s:8:"filename";s:33:"sources/blocks/side_tag_cloud.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"caching_environment";s:11:"description";s:35:"Find caching details for the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:66:"Map of cache details (cache_on and ttl) (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:33:"sources/blocks/side_tag_cloud.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:20:"Block_side_tag_cloud";s:7:"comment";b:1;}s:23:"Block_side_users_online";a:3:{s:9:"functions";a:3:{s:4:"info";a:6:{s:8:"filename";s:36:"sources/blocks/side_users_online.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:19:"caching_environment";a:6:{s:8:"filename";s:36:"sources/blocks/side_users_online.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"caching_environment";s:11:"description";s:35:"Find caching details for the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:66:"Map of cache details (cache_on and ttl) (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:36:"sources/blocks/side_users_online.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:23:"Block_side_users_online";s:7:"comment";b:1;}s:15:"Block_top_login";a:3:{s:9:"functions";a:3:{s:4:"info";a:6:{s:8:"filename";s:28:"sources/blocks/top_login.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:19:"caching_environment";a:6:{s:8:"filename";s:28:"sources/blocks/top_login.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"caching_environment";s:11:"description";s:35:"Find caching details for the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:66:"Map of cache details (cache_on and ttl) (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:28:"sources/blocks/top_login.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:15:"Block_top_login";s:7:"comment";b:1;}s:23:"Block_top_notifications";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:36:"sources/blocks/top_notifications.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:36:"sources/blocks/top_notifications.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:23:"Block_top_notifications";s:7:"comment";b:1;}s:24:"Block_top_personal_stats";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:37:"sources/blocks/top_personal_stats.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:37:"sources/blocks/top_personal_stats.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:24:"Block_top_personal_stats";s:7:"comment";b:1;}s:16:"Block_top_search";a:3:{s:9:"functions";a:3:{s:4:"info";a:6:{s:8:"filename";s:29:"sources/blocks/top_search.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:26:"Find details of the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:44:"Map of block info (null: block is disabled).";}}s:19:"caching_environment";a:6:{s:8:"filename";s:29:"sources/blocks/top_search.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"caching_environment";s:11:"description";s:35:"Find caching details for the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:66:"Map of cache details (cache_on and ttl) (null: block is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:29:"sources/blocks/top_search.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"A map of parameters.";s:11:"phpdoc_name";s:3:"map";}}s:4:"name";s:3:"run";s:11:"description";s:18:"Execute the block.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:16:"Block_top_search";s:7:"comment";b:1;}s:30:"Breadcrumb_substitution_loader";a:3:{s:9:"functions";a:4:{s:2:"go";a:5:{s:8:"filename";s:23:"sources/breadcrumbs.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"The breadcrumb XML data";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:2:"go";s:11:"description";s:64:"Run the loader, to load up field-restrictions from the XML file.";s:5:"flags";a:0:{}}s:12:"startElement";a:5:{s:8:"filename";s:23:"sources/breadcrumbs.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:6:"parser";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:34:"The parser object (same as 'this')";s:11:"phpdoc_name";s:6:"parser";}i:1;a:5:{s:4:"name";s:3:"tag";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:29:"The name of the element found";s:11:"phpdoc_name";s:3:"tag";}i:2;a:5:{s:4:"name";s:11:"_attributes";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:34:"Array of attributes of the element";s:11:"phpdoc_name";s:11:"_attributes";}}s:4:"name";s:12:"startElement";s:11:"description";s:33:"Standard PHP XML parser function.";s:5:"flags";a:0:{}}s:9:"startText";a:5:{s:8:"filename";s:23:"sources/breadcrumbs.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:6:"parser";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:34:"The parser object (same as 'this')";s:11:"phpdoc_name";s:6:"parser";}i:1;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:8:"The text";s:11:"phpdoc_name";s:4:"data";}}s:4:"name";s:9:"startText";s:11:"description";s:33:"Standard PHP XML parser function.";s:5:"flags";a:0:{}}s:10:"endElement";a:5:{s:8:"filename";s:23:"sources/breadcrumbs.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"parser";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:34:"The parser object (same as 'this')";s:11:"phpdoc_name";s:6:"parser";}}s:4:"name";s:10:"endElement";s:11:"description";s:33:"Standard PHP XML parser function.";s:5:"flags";a:0:{}}}s:4:"name";s:30:"Breadcrumb_substitution_loader";s:7:"comment";b:1;}s:19:"Self_learning_cache";a:3:{s:9:"functions";a:11:{s:11:"__construct";a:5:{s:8:"filename";s:18:"sources/caches.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:11:"bucket_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:39:"The identifier this cache object is for";s:11:"phpdoc_name";s:11:"bucket_name";}}s:4:"name";s:11:"__construct";s:11:"description";s:34:"Constructor. Initialise our cache.";s:5:"flags";a:0:{}}s:5:"is_on";a:6:{s:8:"filename";s:18:"sources/caches.php";s:10:"parameters";a:0:{}s:4:"name";s:5:"is_on";s:11:"description";s:35:"Find whether the smart cache is on.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:13:"Whether it is";}}s:4:"load";a:5:{s:8:"filename";s:18:"sources/caches.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"load";s:11:"description";s:66:"Load the cache for the particular bucket this cache object is for.";s:5:"flags";a:0:{}}s:3:"get";a:6:{s:8:"filename";s:18:"sources/caches.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"key";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:9:"Cache key";s:11:"phpdoc_name";s:3:"key";}}s:4:"name";s:3:"get";s:11:"description";s:16:"Get a cache key.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:51:"The value (null: not in cache - needs to be learnt)";}}s:18:"get_initial_status";a:6:{s:8:"filename";s:18:"sources/caches.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"key";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:9:"Cache key";s:11:"phpdoc_name";s:3:"key";}}s:4:"name";s:18:"get_initial_status";s:11:"description";s:37:"See if a cache key was initially set.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Whether it was";}}s:3:"set";a:5:{s:8:"filename";s:18:"sources/caches.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:3:"key";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:9:"Cache key";s:11:"phpdoc_name";s:3:"key";}i:1;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:65:"Value. Should not be null, as that is reserved for "not in cache"";s:11:"phpdoc_name";s:5:"value";}}s:4:"name";s:3:"set";s:11:"description";s:16:"Set a cache key.";s:5:"flags";a:0:{}}s:6:"append";a:6:{s:8:"filename";s:18:"sources/caches.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:3:"key";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:9:"Cache key";s:11:"phpdoc_name";s:3:"key";}i:1;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:82:"Value to append (must not be an object or array, so you may need to pre-serialize)";s:11:"phpdoc_name";s:5:"value";}i:2;a:7:{s:4:"name";s:7:"value_2";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:54:"Secondary value to attach to appended value (optional)";s:11:"phpdoc_name";s:7:"value_2";}}s:4:"name";s:6:"append";s:11:"description";s:150:"Add something to a list entry in the cache. Uses keys to set the value, then assigns $value_2 to the key.This is efficient for duplication prevention.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:62:"Whether the value was appended (false if it was already there)";}}s:4:"save";a:5:{s:8:"filename";s:18:"sources/caches.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:14:"do_immediately";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:43:"Immediately save the cache change (slow...)";s:11:"phpdoc_name";s:14:"do_immediately";}}s:4:"name";s:4:"save";s:11:"description";s:47:"Save the cache, after some change has happened.";s:5:"flags";a:0:{}}s:18:"_page_cache_resave";a:5:{s:8:"filename";s:18:"sources/caches.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"_page_cache_resave";s:11:"description";s:72:"Actually save the cache.Has to be public for register_shutdown_function.";s:5:"flags";a:0:{}}s:10:"invalidate";a:5:{s:8:"filename";s:18:"sources/caches.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"invalidate";s:11:"description";s:46:"Invalidate the cache, so that it will rebuild.";s:5:"flags";a:0:{}}s:17:"erase_smart_cache";a:5:{s:8:"filename";s:18:"sources/caches.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"erase_smart_cache";s:11:"description";s:84:"Called by various other erase_* functions that know the smart cache may be involved.";s:5:"flags";a:0:{}}}s:4:"name";s:19:"Self_learning_cache";s:7:"comment";b:1;}s:13:"Virtual_shell";a:3:{s:9:"functions";a:17:{s:11:"__construct";a:5:{s:8:"filename";s:20:"sources/commandr.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:16:"inputted_command";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:30:"The inputted command, unparsed";s:11:"phpdoc_name";s:16:"inputted_command";}i:1;a:7:{s:4:"name";s:12:"prior_output";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:53:"An array of prior output to be prepended (null: none)";s:11:"phpdoc_name";s:12:"prior_output";}i:2;a:7:{s:4:"name";s:10:"parameters";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:41:"An array of prior parameters (null: none)";s:11:"phpdoc_name";s:10:"parameters";}}s:4:"name";s:11:"__construct";s:11:"description";s:69:"Constructor function. Starts command parsing on the supplied command.";s:5:"flags";a:0:{}}s:17:"return_parse_tree";a:6:{s:8:"filename";s:20:"sources/commandr.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"return_parse_tree";s:11:"description";s:51:"Returns the parse tree for the command just parsed.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:31:"The parse tree (false: failure)";}}s:13:"return_output";a:6:{s:8:"filename";s:20:"sources/commandr.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"return_output";s:11:"description";s:47:"Returns the output for the command just parsed.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:27:"The output (false: failure)";}}s:10:"output_xml";a:6:{s:8:"filename";s:20:"sources/commandr.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"output_xml";s:11:"description";s:65:"Output an XML-RPC packet (hopefully) to the AJAX in the frontend.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:8:"Success?";}}s:11:"output_html";a:6:{s:8:"filename";s:20:"sources/commandr.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:8:"blank_ok";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:39:"Whether it is okay to have blank output";s:11:"phpdoc_name";s:8:"blank_ok";}}s:4:"name";s:11:"output_html";s:11:"description";s:57:"Return the HTML rendering of the parsed command's output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"~Tempcode";s:11:"description";s:23:"The HTML (false: error)";}}s:16:"_extract_command";a:5:{s:8:"filename";s:20:"sources/commandr.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"_extract_command";s:11:"description";s:40:"Extract the command name from the input.";s:5:"flags";a:0:{}}s:16:"_extract_options";a:5:{s:8:"filename";s:20:"sources/commandr.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"_extract_options";s:11:"description";s:42:"Extract options (switches) from the input.";s:5:"flags";a:0:{}}s:19:"_extract_parameters";a:5:{s:8:"filename";s:20:"sources/commandr.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"_extract_parameters";s:11:"description";s:34:"Extract parameters from the input.";s:5:"flags";a:0:{}}s:15:"_extract_extras";a:5:{s:8:"filename";s:20:"sources/commandr.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"_extract_extras";s:11:"description";s:36:"Extract extra tokens from the input.";s:5:"flags";a:0:{}}s:21:"_check_is_redirection";a:6:{s:8:"filename";s:20:"sources/commandr.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"_check_is_redirection";s:11:"description";s:53:"Is the current block a valid redirection instruction?";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:24:"Redirection instruction?";}}s:11:"parse_input";a:5:{s:8:"filename";s:20:"sources/commandr.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"parse_input";s:11:"description";s:60:"Parses input setup in constructor, and creates a parse tree.";s:5:"flags";a:0:{}}s:16:"_combine_streams";a:6:{s:8:"filename";s:20:"sources/commandr.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:7:"stream1";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:8:"Stream 1";s:11:"phpdoc_name";s:7:"stream1";}i:1;a:5:{s:4:"name";s:7:"stream2";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:8:"Stream 2";s:11:"phpdoc_name";s:7:"stream2";}}s:4:"name";s:16:"_combine_streams";s:11:"description";s:47:"Combine two streams regardless of their format.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:16:"Combined streams";}}s:14:"_array_to_html";a:6:{s:8:"filename";s:20:"sources/commandr.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"array";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:16:"Array to display";s:11:"phpdoc_name";s:5:"array";}}s:4:"name";s:14:"_array_to_html";s:11:"description";s:41:"Convert an array to Tempcode for display.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:18:"Tempcode for array";}}s:14:"_array_to_text";a:6:{s:8:"filename";s:20:"sources/commandr.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"array";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:16:"Array to display";s:11:"phpdoc_name";s:5:"array";}i:1;a:7:{s:4:"name";s:11:"indentation";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:18:"Global indentation";s:11:"phpdoc_name";s:11:"indentation";}}s:4:"name";s:14:"_array_to_text";s:11:"description";s:37:"Convert an array to text for display.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:28:"Text representation of array";}}s:15:"_do_indentation";a:6:{s:8:"filename";s:20:"sources/commandr.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:11:"indentation";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:24:"Number of tabs to return";s:11:"phpdoc_name";s:11:"indentation";}}s:4:"name";s:15:"_do_indentation";s:11:"description";s:34:"Return a specified number of tabs.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:4:"Tabs";}}s:19:"_handle_php_command";a:5:{s:8:"filename";s:20:"sources/commandr.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"_handle_php_command";s:11:"description";s:76:"Handle a PHP command by executing it, dealing with variables from the class.";s:5:"flags";a:0:{}}s:17:"_find_script_file";a:6:{s:8:"filename";s:20:"sources/commandr.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:11:"script_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:11:"Script name";s:11:"phpdoc_name";s:11:"script_name";}i:1;a:7:{s:4:"name";s:3:"dir";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:42:"Directory (null: Commandr module data dir)";s:11:"phpdoc_name";s:3:"dir";}}s:4:"name";s:17:"_find_script_file";s:11:"description";s:19:"Find a script file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"~string";s:11:"description";s:32:"Path or failure (false: failure)";}}}s:4:"name";s:13:"Virtual_shell";s:7:"comment";b:1;}s:11:"Commandr_fs";a:3:{s:9:"functions";a:26:{s:11:"__construct";a:5:{s:8:"filename";s:23:"sources/commandr_fs.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"__construct";s:11:"description";s:73:"Constructor function. Setup a virtual filesystem, but do nothing with it.";s:5:"flags";a:0:{}}s:10:"_start_pwd";a:6:{s:8:"filename";s:23:"sources/commandr_fs.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"_start_pwd";s:11:"description";s:58:"Fetch the current directory from a cookie, or the default.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"Current directory";}}s:25:"_get_current_dir_contents";a:6:{s:8:"filename";s:23:"sources/commandr_fs.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:3:"dir";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:43:"Directory (null: current directory is used)";s:11:"phpdoc_name";s:3:"dir";}i:1;a:7:{s:4:"name";s:10:"full_paths";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:25:"Whether to use full paths";s:11:"phpdoc_name";s:10:"full_paths";}}s:4:"name";s:25:"_get_current_dir_contents";s:11:"description";s:98:"Return the contents of the given directory in $this->commandr_fs (i.e. ls without the fancy bits).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:35:"Directory contents (false: failure)";}}s:13:"_pwd_to_array";a:6:{s:8:"filename";s:23:"sources/commandr_fs.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"pwd";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:4:"Path";s:11:"phpdoc_name";s:3:"pwd";}}s:4:"name";s:13:"_pwd_to_array";s:11:"description";s:39:"Convert a string-form path to an array.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:15:"Array-form path";}}s:11:"_merge_pwds";a:6:{s:8:"filename";s:23:"sources/commandr_fs.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"pwd1";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:13:"Absolute path";s:11:"phpdoc_name";s:4:"pwd1";}i:1;a:5:{s:4:"name";s:4:"pwd2";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"Non-absolute path";s:11:"phpdoc_name";s:4:"pwd2";}}s:4:"name";s:11:"_merge_pwds";s:11:"description";s:108:"Merge an absolute array-form path with a non-absolute array-form path, with support for "."/".." resolution.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"Merged path";}}s:13:"pwd_to_string";a:6:{s:8:"filename";s:23:"sources/commandr_fs.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:3:"pwd";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:27:"Path (null: use $this->pwd)";s:11:"phpdoc_name";s:3:"pwd";}}s:4:"name";s:13:"pwd_to_string";s:11:"description";s:39:"Convert an array-form path to a string.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:16:"String-form path";}}s:13:"_get_filename";a:6:{s:8:"filename";s:23:"sources/commandr_fs.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:4:"Path";s:11:"phpdoc_name";s:8:"filename";}}s:4:"name";s:13:"_get_filename";s:11:"description";s:28:"Return filename from a path.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:8:"Filename";}}s:7:"_is_dir";a:6:{s:8:"filename";s:23:"sources/commandr_fs.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:3:"dir";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:41:"Path to check (null: current dir is used)";s:11:"phpdoc_name";s:3:"dir";}}s:4:"name";s:7:"_is_dir";s:11:"description";s:18:"Is it a directory?";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:10:"Directory?";}}s:8:"_is_file";a:6:{s:8:"filename";s:23:"sources/commandr_fs.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:27:"Path (with filename) to use";s:11:"phpdoc_name";s:3:"dir";}}s:4:"name";s:8:"_is_file";s:11:"description";s:13:"Is it a file?";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:10:"Directory?";}}s:17:"_discern_meta_dir";a:6:{s:8:"filename";s:23:"sources/commandr_fs.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:8:"meta_dir";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:44:"Meta directory result: returned by reference";s:11:"phpdoc_name";s:8:"meta_dir";}i:1;a:5:{s:4:"name";s:14:"meta_root_node";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:44:"Meta root node result: returned by reference";s:11:"phpdoc_name";s:14:"meta_root_node";}i:2;a:5:{s:4:"name";s:19:"meta_root_node_type";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:49:"Meta root node type result: returned by reference";s:11:"phpdoc_name";s:19:"meta_root_node_type";}i:3;a:7:{s:4:"name";s:10:"target_dir";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:43:"Directory (null: current directory is used)";s:11:"phpdoc_name";s:10:"target_dir";}}s:4:"name";s:17:"_discern_meta_dir";s:11:"description";s:42:"Get details of the current meta directory.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"~array";s:11:"description";s:41:"Current directory contents (false: error)";}}s:33:"_convert_meta_dir_to_detailed_dir";a:6:{s:8:"filename";s:23:"sources/commandr_fs.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:14:"_inspected_dir";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:37:"Simple list of directories under here";s:11:"phpdoc_name";s:14:"_inspected_dir";}}s:4:"name";s:33:"_convert_meta_dir_to_detailed_dir";s:11:"description";s:71:"Fill out a hardcoded meta-dir to use our more detailed internal format.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:32:"Full detailed directory contents";}}s:32:"prepare_dir_contents_for_listing";a:6:{s:8:"filename";s:23:"sources/commandr_fs.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"entries";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:9:"Structure";s:11:"phpdoc_name";s:7:"entries";}}s:4:"name";s:32:"prepare_dir_contents_for_listing";s:11:"description";s:75:"Convert a directory contents structure into a template parameter structure.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:28:"Template parameter structure";}}s:23:"print_working_directory";a:6:{s:8:"filename";s:23:"sources/commandr_fs.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:10:"array_form";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Return the pwd in array form?";s:11:"phpdoc_name";s:10:"array_form";}}s:4:"name";s:23:"print_working_directory";s:11:"description";s:89:"Return the current working directory of the virtual filesystem. Equivalent to Unix "pwd".";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:47:"The current working directory (array or string)";}}s:7:"listing";a:6:{s:8:"filename";s:23:"sources/commandr_fs.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:3:"dir";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:87:"An alternate directory in which to perform the action (null: current directory is used)";s:11:"phpdoc_name";s:3:"dir";}}s:4:"name";s:7:"listing";s:11:"description";s:94:"Return a directory and file listing of the current working directory. Equivalent to Unix "ls".";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:54:"Directories and files in the current working directory";}}s:6:"search";a:6:{s:8:"filename";s:23:"sources/commandr_fs.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:7:"pattern";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:41:"The search pattern (PRCE regexp or plain)";s:11:"phpdoc_name";s:7:"pattern";}i:1;a:7:{s:4:"name";s:6:"regexp";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Is the search pattern a regexp?";s:11:"phpdoc_name";s:6:"regexp";}i:2;a:7:{s:4:"name";s:9:"recursive";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Should the search be recursive?";s:11:"phpdoc_name";s:9:"recursive";}i:3;a:7:{s:4:"name";s:5:"files";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:40:"Should files be included in the results?";s:11:"phpdoc_name";s:5:"files";}i:4;a:7:{s:4:"name";s:11:"directories";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:46:"Should directories be included in the results?";s:11:"phpdoc_name";s:11:"directories";}i:5;a:7:{s:4:"name";s:3:"dir";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:43:"Directory (null: current directory is used)";s:11:"phpdoc_name";s:3:"dir";}}s:4:"name";s:6:"search";s:11:"description";s:110:"Return a listing of all the files/directories found matching the specified pattern. Equivalent to Unix "find".";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:18:"The search results";}}s:16:"change_directory";a:6:{s:8:"filename";s:23:"sources/commandr_fs.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:16:"target_directory";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:25:"The target directory path";s:11:"phpdoc_name";s:16:"target_directory";}}s:4:"name";s:16:"change_directory";s:11:"description";s:62:"Change the current working directory. Equivalent to Unix "cd".";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:8:"Success?";}}s:14:"make_directory";a:6:{s:8:"filename";s:23:"sources/commandr_fs.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"directory";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:33:"The new directory's path and name";s:11:"phpdoc_name";s:9:"directory";}}s:4:"name";s:14:"make_directory";s:11:"description";s:83:"Create a directory under the current working directory. Equivalent to Unix "mkdir".";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:8:"Success?";}}s:16:"remove_directory";a:6:{s:8:"filename";s:23:"sources/commandr_fs.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"directory";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:39:"The directory-to-remove's path and name";s:11:"phpdoc_name";s:9:"directory";}}s:4:"name";s:16:"remove_directory";s:11:"description";s:83:"Remove a directory under the current working directory. Equivalent to Unix "rmdir".";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:8:"Success?";}}s:14:"copy_directory";a:6:{s:8:"filename";s:23:"sources/commandr_fs.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:7:"to_copy";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:21:"The directory to copy";s:11:"phpdoc_name";s:7:"to_copy";}i:1;a:5:{s:4:"name";s:11:"destination";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"The destination path";s:11:"phpdoc_name";s:11:"destination";}}s:4:"name";s:14:"copy_directory";s:11:"description";s:42:"Copy a directory. Equivalent to Unix "cp".";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:8:"Success?";}}s:14:"move_directory";a:6:{s:8:"filename";s:23:"sources/commandr_fs.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:7:"to_move";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:21:"The directory to move";s:11:"phpdoc_name";s:7:"to_move";}i:1;a:5:{s:4:"name";s:11:"destination";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"The destination path";s:11:"phpdoc_name";s:11:"destination";}}s:4:"name";s:14:"move_directory";s:11:"description";s:42:"Move a directory. Equivalent to Unix "mv".";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:8:"Success?";}}s:9:"copy_file";a:6:{s:8:"filename";s:23:"sources/commandr_fs.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:7:"to_copy";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:16:"The file to copy";s:11:"phpdoc_name";s:7:"to_copy";}i:1;a:5:{s:4:"name";s:11:"destination";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"The destination path";s:11:"phpdoc_name";s:11:"destination";}}s:4:"name";s:9:"copy_file";s:11:"description";s:37:"Copy a file. Equivalent to Unix "cp".";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:8:"Success?";}}s:9:"move_file";a:6:{s:8:"filename";s:23:"sources/commandr_fs.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:7:"to_move";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:16:"The file to move";s:11:"phpdoc_name";s:7:"to_move";}i:1;a:5:{s:4:"name";s:11:"destination";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:20:"The destination path";s:11:"phpdoc_name";s:11:"destination";}}s:4:"name";s:9:"move_file";s:11:"description";s:37:"Move a file. Equivalent to Unix "mv".";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:8:"Success?";}}s:11:"remove_file";a:6:{s:8:"filename";s:23:"sources/commandr_fs.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"to_remove";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:18:"The file to remove";s:11:"phpdoc_name";s:9:"to_remove";}}s:4:"name";s:11:"remove_file";s:11:"description";s:39:"Remove a file. Equivalent to Unix "rm".";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:8:"Success?";}}s:9:"read_file";a:6:{s:8:"filename";s:23:"sources/commandr_fs.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"to_read";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:16:"The file to read";s:11:"phpdoc_name";s:7:"to_read";}}s:4:"name";s:9:"read_file";s:11:"description";s:36:"Read a file and return the contents.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"~string";s:11:"description";s:34:"The file contents (false: failure)";}}s:10:"write_file";a:6:{s:8:"filename";s:23:"sources/commandr_fs.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"to_write";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"The file to write";s:11:"phpdoc_name";s:8:"to_write";}i:1;a:5:{s:4:"name";s:8:"contents";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The contents to write";s:11:"phpdoc_name";s:8:"contents";}}s:4:"name";s:10:"write_file";s:11:"description";s:53:"Write to a file; create the file if it doesn't exist.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:8:"Success?";}}s:11:"append_file";a:6:{s:8:"filename";s:23:"sources/commandr_fs.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:9:"to_append";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:27:"The file to which to append";s:11:"phpdoc_name";s:9:"to_append";}i:1;a:5:{s:4:"name";s:8:"contents";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:22:"The contents to append";s:11:"phpdoc_name";s:8:"contents";}}s:4:"name";s:11:"append_file";s:11:"description";s:17:"Append to a file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:8:"Success?";}}}s:4:"name";s:11:"Commandr_fs";s:7:"comment";b:1;}s:20:"Standard_crud_module";a:3:{s:9:"functions";a:21:{s:4:"info";a:6:{s:8:"filename";s:23:"sources/crud_module.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:27:"Find details of the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:46:"Map of module info (null: module is disabled).";}}s:16:"get_entry_points";a:6:{s:8:"filename";s:23:"sources/crud_module.php";s:10:"parameters";a:4:{i:0;a:7:{s:4:"name";s:11:"check_perms";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:11:"check_perms";}i:1;a:7:{s:4:"name";s:9:"member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:56:"The member to check permissions as (null: current user).";s:11:"phpdoc_name";s:9:"member_id";}i:2;a:7:{s:4:"name";s:18:"support_crosslinks";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:108:"Whether to allow cross links to other modules (identifiable via a full-page-link rather than a screen-name).";s:11:"phpdoc_name";s:18:"support_crosslinks";}i:3;a:7:{s:4:"name";s:14:"be_deferential";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:310:"Whether to avoid any entry-point (or even return null to disable the page in the Sitemap) if we know another module, or page_group, is going to link to that entry-point. Note that "!" and "browse" entry points are automatically merged with container page nodes (likely called by page-groupings) as appropriate.";s:11:"phpdoc_name";s:14:"be_deferential";}}s:4:"name";s:16:"get_entry_points";s:11:"description";s:47:"Find entry-points available within this module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:132:"A map of entry points (screen-name=>language-code/string or screen-name=>[language-code/string, icon-theme-image]) (null: disabled).";}}s:7:"pre_run";a:6:{s:8:"filename";s:23:"sources/crud_module.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:9:"top_level";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:77:"Whether this is running at the top level, prior to having sub-objects called.";s:11:"phpdoc_name";s:9:"top_level";}i:1;a:7:{s:4:"name";s:4:"type";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:80:"The screen type to consider for metadata purposes (null: read from environment).";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:7:"pre_run";s:11:"description";s:96:"Module pre-run function. Allows us to know metadata for before we start streaming output.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"Tempcode indicating some kind of exceptional output (null: none).";}}s:3:"run";a:6:{s:8:"filename";s:23:"sources/crud_module.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:19:"Execute the module.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}s:19:"get_screen_type_for";a:6:{s:8:"filename";s:23:"sources/crud_module.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:9:"type_code";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:45:"General-purpose screen type code (e.g. 'add')";s:11:"phpdoc_name";s:9:"type_code";}i:1;a:5:{s:4:"name";s:4:"stub";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:50:"Type code for current flow (e.g. '' or 'category')";s:11:"phpdoc_name";s:4:"stub";}}s:4:"name";s:19:"get_screen_type_for";s:11:"description";s:28:"Work out a screen type code.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:25:"Complete screen type code";}}s:36:"choose_feedback_fields_statistically";a:6:{s:8:"filename";s:23:"sources/crud_module.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:12:"allow_rating";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:81:"Whether rating is allowed (null: decide statistically, based on existing choices)";s:11:"phpdoc_name";s:12:"allow_rating";}i:1;a:5:{s:4:"name";s:14:"allow_comments";s:3:"ref";b:0;s:4:"type";s:14:"?SHORT_INTEGER";s:11:"description";s:114:"Whether comments are allowed (0=no, 1=yes, 2=review style) (null: decide statistically, based on existing choices)";s:11:"phpdoc_name";s:14:"allow_comments";}i:2;a:5:{s:4:"name";s:16:"allow_trackbacks";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:86:"Whether trackbacks are allowed (null: decide statistically, based on existing choices)";s:11:"phpdoc_name";s:16:"allow_trackbacks";}}s:4:"name";s:36:"choose_feedback_fields_statistically";s:11:"description";s:74:"Statistically work out defaults for feedback fields, if not currently set.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:40:"Array of all input parameters, converted";}}s:21:"get_permission_fields";a:6:{s:8:"filename";s:23:"sources/crud_module.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:11:"category_id";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:73:"The category ID the permissions are being chosen for (null: new category)";s:11:"phpdoc_name";s:11:"category_id";}i:1;a:7:{s:4:"name";s:4:"help";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:9:"?Tempcode";s:11:"description";s:44:"Extra help to show in interface (null: none)";s:11:"phpdoc_name";s:4:"help";}i:2;a:7:{s:4:"name";s:12:"new_category";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:70:"Whether this is a new category (don't load permissions, default to on)";s:11:"phpdoc_name";s:12:"new_category";}i:3;a:7:{s:4:"name";s:15:"pinterface_view";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:9:"?Tempcode";s:11:"description";s:42:"Label for view permissions (null: default)";s:11:"phpdoc_name";s:15:"pinterface_view";}}s:4:"name";s:21:"get_permission_fields";s:11:"description";s:40:"Standard CRUD-module permission chooser.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:21:"The permission fields";}}s:15:"set_permissions";a:5:{s:8:"filename";s:23:"sources/crud_module.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:35:"The category to set permissions for";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:15:"set_permissions";s:11:"description";s:58:"Set permissions of the news category from POST parameters.";s:5:"flags";a:0:{}}s:15:"do_next_manager";a:6:{s:8:"filename";s:23:"sources/crud_module.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:38:"The title (output of get_screen_title)";s:11:"phpdoc_name";s:5:"title";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:46:"Some description to show, saying what happened";s:11:"phpdoc_name";s:11:"description";}i:2;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:54:"The ID of whatever we are working with (null: deleted)";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:15:"do_next_manager";s:11:"description";s:49:"The do-next manager for after content management.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:20:"handle_confirmations";a:6:{s:8:"filename";s:23:"sources/crud_module.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:36:"The page title for what's being done";s:11:"phpdoc_name";s:5:"title";}}s:4:"name";s:20:"handle_confirmations";s:11:"description";s:61:"If a confirmation is needed, and not been given, ask for one.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:65:"The confirmation UI (null: all is clear - no confirmation needed)";}}s:16:"choose_catalogue";a:6:{s:8:"filename";s:23:"sources/crud_module.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:50:"The get_screen_title converted title for this page";s:11:"phpdoc_name";s:5:"title";}}s:4:"name";s:16:"choose_catalogue";s:11:"description";s:78:"Get some XHTML for a form to choose a catalogue out of all the available ones.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:61:"The Tempcode for the catalogue chooser (null: already chosen)";}}s:17:"preview_intercept";a:6:{s:8:"filename";s:23:"sources/crud_module.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"title";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:14:"The page title";s:11:"phpdoc_name";s:5:"title";}}s:4:"name";s:17:"preview_intercept";s:11:"description";s:47:"Standard CRUD-module UI for a separate preview.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:18:"has_tied_catalogue";a:6:{s:8:"filename";s:23:"sources/crud_module.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"has_tied_catalogue";s:11:"description";s:52:"Find whether this content type has a tied catalogue.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Whether it has";}}s:3:"add";a:6:{s:8:"filename";s:23:"sources/crud_module.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"add";s:11:"description";s:42:"Standard CRUD-module UI to add a resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:4:"_add";a:6:{s:8:"filename";s:23:"sources/crud_module.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"_add";s:11:"description";s:53:"Standard CRUD-module UI/actualiser to add a resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:14:"get_entry_rows";a:6:{s:8:"filename";s:23:"sources/crud_module.php";s:10:"parameters";a:5:{i:0;a:7:{s:4:"name";s:7:"recache";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:26:"Whether to force a recache";s:11:"phpdoc_name";s:7:"recache";}i:1;a:7:{s:4:"name";s:7:"orderer";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:30:"Order to use (null: automatic)";s:11:"phpdoc_name";s:7:"orderer";}i:2;a:7:{s:4:"name";s:5:"where";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:32:"Extra where clauses (null: none)";s:11:"phpdoc_name";s:5:"where";}i:3;a:7:{s:4:"name";s:13:"force_site_db";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:48:"Whether to always access using the site database";s:11:"phpdoc_name";s:13:"force_site_db";}i:4;a:7:{s:4:"name";s:4:"join";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:45:"Extra join clause for our query (blank: none)";s:11:"phpdoc_name";s:4:"join";}}s:4:"name";s:14:"get_entry_rows";s:11:"description";s:67:"Standard CRUD-module entry function to get rows for selection from.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:46:"A pair: Rows for selection from, Total results";}}s:29:"create_selection_list_entries";a:6:{s:8:"filename";s:23:"sources/crud_module.php";s:10:"parameters";a:0:{}s:4:"name";s:29:"create_selection_list_entries";s:11:"description";s:40:"Standard CRUD-module entry list fetcher.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:18:"The selection list";}}s:4:"edit";a:6:{s:8:"filename";s:23:"sources/crud_module.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"edit";s:11:"description";s:53:"Standard CRUD-module UI to choose a resource to edit.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:5:"_edit";a:6:{s:8:"filename";s:23:"sources/crud_module.php";s:10:"parameters";a:0:{}s:4:"name";s:5:"_edit";s:11:"description";s:43:"Standard CRUD-module UI to edit a resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:6:"__edit";a:6:{s:8:"filename";s:23:"sources/crud_module.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"__edit";s:11:"description";s:54:"Standard CRUD-module UI/actualiser to edit a resource.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:11:"mass_delete";a:6:{s:8:"filename";s:23:"sources/crud_module.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:9:"top_level";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:65:"Whether this is a top level mass delete op (i.e. not a recursion)";s:11:"phpdoc_name";s:9:"top_level";}}s:4:"name";s:11:"mass_delete";s:11:"description";s:36:"Mass delete some entries/categories.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:28:"The UI (null: not top level)";}}}s:4:"name";s:20:"Standard_crud_module";s:7:"comment";b:1;}s:22:"Database_Static_access";a:3:{s:9:"functions";a:20:{s:15:"db_default_user";a:6:{s:8:"filename";s:27:"sources/database/access.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"db_default_user";s:11:"description";s:84:"Get the default user for making db connections (used by the installer as a default).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:35:"The default user for db connections";}}s:19:"db_default_password";a:6:{s:8:"filename";s:27:"sources/database/access.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"db_default_password";s:11:"description";s:88:"Get the default password for making db connections (used by the installer as a default).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:39:"The default password for db connections";}}s:15:"db_create_index";a:5:{s:8:"filename";s:27:"sources/database/access.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:10:"table_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:44:"The name of the table to create the index on";s:11:"phpdoc_name";s:10:"table_name";}i:1;a:5:{s:4:"name";s:10:"index_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:44:"The index name (not really important at all)";s:11:"phpdoc_name";s:10:"index_name";}i:2;a:5:{s:4:"name";s:7:"_fields";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:75:"Part of the SQL query: a comma-separated list of fields to use on the index";s:11:"phpdoc_name";s:7:"_fields";}i:3;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:28:"The DB connection to make on";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:15:"db_create_index";s:11:"description";s:21:"Create a table index.";s:5:"flags";a:0:{}}s:21:"db_change_primary_key";a:5:{s:8:"filename";s:27:"sources/database/access.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:10:"table_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:44:"The name of the table to create the index on";s:11:"phpdoc_name";s:10:"table_name";}i:1;a:5:{s:4:"name";s:7:"new_key";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:38:"A list of fields to put in the new key";s:11:"phpdoc_name";s:7:"new_key";}i:2;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:28:"The DB connection to make on";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:21:"db_change_primary_key";s:11:"description";s:34:"Change the primary key of a table.";s:5:"flags";a:0:{}}s:15:"db_get_first_id";a:6:{s:8:"filename";s:27:"sources/database/access.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"db_get_first_id";s:11:"description";s:102:"Get the ID of the first row in an auto-increment table (used whenever we need to reference the first).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:13:"First ID used";}}s:17:"db_get_type_remap";a:6:{s:8:"filename";s:27:"sources/database/access.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"db_get_type_remap";s:11:"description";s:59:"Get a map of Composr field types, to actual database types.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:7:"The map";}}s:20:"db_close_connections";a:5:{s:8:"filename";s:27:"sources/database/access.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"db_close_connections";s:11:"description";s:130:"Close the database connections. We don't really need to close them (will close at exit), just disassociate so we can refresh them.";s:5:"flags";a:0:{}}s:15:"db_create_table";a:5:{s:8:"filename";s:27:"sources/database/access.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:10:"table_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The table name";s:11:"phpdoc_name";s:10:"table_name";}i:1;a:5:{s:4:"name";s:6:"fields";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:64:"A map of field names to Composr field types (with *#? encodings)";s:11:"phpdoc_name";s:6:"fields";}i:2;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:28:"The DB connection to make on";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:15:"db_create_table";s:11:"description";s:19:"Create a new table.";s:5:"flags";a:0:{}}s:18:"db_string_equal_to";a:6:{s:8:"filename";s:27:"sources/database/access.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:9:"attribute";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The attribute";s:11:"phpdoc_name";s:9:"attribute";}i:1;a:5:{s:4:"name";s:7:"compare";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The comparison";s:11:"phpdoc_name";s:7:"compare";}}s:4:"name";s:18:"db_string_equal_to";s:11:"description";s:83:"Encode an SQL statement fragment for a conditional to see if two strings are equal.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:7:"The SQL";}}s:22:"db_string_not_equal_to";a:6:{s:8:"filename";s:27:"sources/database/access.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:9:"attribute";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The attribute";s:11:"phpdoc_name";s:9:"attribute";}i:1;a:5:{s:4:"name";s:7:"compare";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The comparison";s:11:"phpdoc_name";s:7:"compare";}}s:4:"name";s:22:"db_string_not_equal_to";s:11:"description";s:87:"Encode an SQL statement fragment for a conditional to see if two strings are not equal.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:7:"The SQL";}}s:16:"db_empty_is_null";a:6:{s:8:"filename";s:27:"sources/database/access.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"db_empty_is_null";s:11:"description";s:173:"This function is internal to the database system, allowing SQL statements to be build up appropriately. Some databases require IS NULL to be used to check for blank strings.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether a blank string IS NULL";}}s:23:"db_drop_table_if_exists";a:5:{s:8:"filename";s:27:"sources/database/access.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"table";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The table name";s:11:"phpdoc_name";s:5:"table";}i:1;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:30:"The DB connection to delete on";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:23:"db_drop_table_if_exists";s:11:"description";s:15:"Delete a table.";s:5:"flags";a:0:{}}s:22:"db_is_flat_file_simple";a:6:{s:8:"filename";s:27:"sources/database/access.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"db_is_flat_file_simple";s:11:"description";s:117:"Determine whether the database is a flat file database, and thus not have a meaningful connect username and password.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:44:"Whether the database is a flat file database";}}s:14:"db_encode_like";a:6:{s:8:"filename";s:27:"sources/database/access.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"pattern";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:11:"The pattern";s:11:"phpdoc_name";s:7:"pattern";}}s:4:"name";s:14:"db_encode_like";s:11:"description";s:136:"Encode a LIKE string comparision fragement for the database system. The pattern is a mixture of characters and ? and % wildcard symbols.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:19:"The encoded pattern";}}s:17:"db_get_connection";a:6:{s:8:"filename";s:27:"sources/database/access.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:10:"persistent";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:41:"Whether to create a persistent connection";s:11:"phpdoc_name";s:10:"persistent";}i:1;a:5:{s:4:"name";s:7:"db_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:17:"The database name";s:11:"phpdoc_name";s:7:"db_name";}i:2;a:5:{s:4:"name";s:7:"db_host";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:30:"The database host (the server)";s:11:"phpdoc_name";s:7:"db_host";}i:3;a:5:{s:4:"name";s:7:"db_user";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:32:"The database connection username";s:11:"phpdoc_name";s:7:"db_user";}i:4;a:5:{s:4:"name";s:11:"db_password";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:32:"The database connection password";s:11:"phpdoc_name";s:11:"db_password";}i:5;a:7:{s:4:"name";s:7:"fail_ok";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:93:"Whether to on error echo an error and return with a null, rather than giving a critical error";s:11:"phpdoc_name";s:7:"fail_ok";}}s:4:"name";s:17:"db_get_connection";s:11:"description";s:128:"Get a database connection. This function shouldn't be used by you, as a connection to the database is established automatically.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:36:"A database connection (null: failed)";}}s:16:"db_has_full_text";a:6:{s:8:"filename";s:27:"sources/database/access.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"A DB connection";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:16:"db_has_full_text";s:11:"description";s:40:"Find whether full-text-search is present";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:13:"Whether it is";}}s:16:"db_escape_string";a:6:{s:8:"filename";s:27:"sources/database/access.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:10:"The string";s:11:"phpdoc_name";s:6:"string";}}s:4:"name";s:16:"db_escape_string";s:11:"description";s:234:"Escape a string so it may be inserted into a query. If SQL statements are being built up and passed using db_query then it is essential that this is used for security reasons. Otherwise, the abstraction layer deals with the situation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:18:"The escaped string";}}s:8:"db_query";a:6:{s:8:"filename";s:27:"sources/database/access.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:5:"query";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:22:"The complete SQL query";s:11:"phpdoc_name";s:5:"query";}i:1;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"A DB connection";s:11:"phpdoc_name";s:2:"db";}i:2;a:7:{s:4:"name";s:3:"max";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"The maximum number of rows to affect (null: no limit)";s:11:"phpdoc_name";s:3:"max";}i:3;a:7:{s:4:"name";s:5:"start";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:48:"The start row to affect (null: no specification)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:7:"fail_ok";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:37:"Whether to output an error on failure";s:11:"phpdoc_name";s:7:"fail_ok";}i:5;a:7:{s:4:"name";s:13:"get_insert_id";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:63:"Whether to get the autoincrement ID created for an insert query";s:11:"phpdoc_name";s:13:"get_insert_id";}}s:4:"name";s:8:"db_query";s:11:"description";s:126:"This function is a very basic query executor. It shouldn't usually be used by you, as there are abstracted versions available.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:48:"The results (null: no results), or the insert ID";}}s:17:"db_get_query_rows";a:6:{s:8:"filename";s:27:"sources/database/access.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:7:"results";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:24:"The query result pointer";s:11:"phpdoc_name";s:7:"results";}i:1;a:7:{s:4:"name";s:5:"start";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:70:"Whether to start reading from (null: irrelevant for this forum driver)";s:11:"phpdoc_name";s:5:"start";}}s:4:"name";s:17:"db_get_query_rows";s:11:"description";s:42:"Get the rows returned from a SELECT query.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:18:"A list of row maps";}}s:7:"db_cast";a:6:{s:8:"filename";s:27:"sources/database/access.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:20:"The field identifier";s:11:"phpdoc_name";s:5:"field";}i:1;a:6:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:15:"The type wanted";s:11:"phpdoc_name";s:4:"type";s:3:"set";s:8:"CHAR INT";}}s:4:"name";s:7:"db_cast";s:11:"description";s:19:"Create an SQL cast.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:17:"The database type";}}}s:4:"name";s:22:"Database_Static_access";s:7:"comment";b:1;}s:19:"Database_Static_ibm";a:3:{s:9:"functions";a:19:{s:15:"db_default_user";a:6:{s:8:"filename";s:24:"sources/database/ibm.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"db_default_user";s:11:"description";s:84:"Get the default user for making db connections (used by the installer as a default).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:35:"The default user for db connections";}}s:19:"db_default_password";a:6:{s:8:"filename";s:24:"sources/database/ibm.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"db_default_password";s:11:"description";s:88:"Get the default password for making db connections (used by the installer as a default).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:39:"The default password for db connections";}}s:15:"db_create_index";a:5:{s:8:"filename";s:24:"sources/database/ibm.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:10:"table_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:44:"The name of the table to create the index on";s:11:"phpdoc_name";s:10:"table_name";}i:1;a:5:{s:4:"name";s:10:"index_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:44:"The index name (not really important at all)";s:11:"phpdoc_name";s:10:"index_name";}i:2;a:5:{s:4:"name";s:7:"_fields";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:75:"Part of the SQL query: a comma-separated list of fields to use on the index";s:11:"phpdoc_name";s:7:"_fields";}i:3;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:28:"The DB connection to make on";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:15:"db_create_index";s:11:"description";s:21:"Create a table index.";s:5:"flags";a:0:{}}s:21:"db_change_primary_key";a:5:{s:8:"filename";s:24:"sources/database/ibm.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:10:"table_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:44:"The name of the table to create the index on";s:11:"phpdoc_name";s:10:"table_name";}i:1;a:5:{s:4:"name";s:7:"new_key";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:38:"A list of fields to put in the new key";s:11:"phpdoc_name";s:7:"new_key";}i:2;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:28:"The DB connection to make on";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:21:"db_change_primary_key";s:11:"description";s:34:"Change the primary key of a table.";s:5:"flags";a:0:{}}s:15:"db_get_first_id";a:6:{s:8:"filename";s:24:"sources/database/ibm.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"db_get_first_id";s:11:"description";s:102:"Get the ID of the first row in an auto-increment table (used whenever we need to reference the first).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:13:"First ID used";}}s:17:"db_get_type_remap";a:6:{s:8:"filename";s:24:"sources/database/ibm.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"db_get_type_remap";s:11:"description";s:59:"Get a map of Composr field types, to actual database types.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:7:"The map";}}s:15:"db_create_table";a:5:{s:8:"filename";s:24:"sources/database/ibm.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:10:"table_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The table name";s:11:"phpdoc_name";s:10:"table_name";}i:1;a:5:{s:4:"name";s:6:"fields";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:64:"A map of field names to Composr field types (with *#? encodings)";s:11:"phpdoc_name";s:6:"fields";}i:2;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:28:"The DB connection to make on";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:15:"db_create_table";s:11:"description";s:19:"Create a new table.";s:5:"flags";a:0:{}}s:18:"db_string_equal_to";a:6:{s:8:"filename";s:24:"sources/database/ibm.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:9:"attribute";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The attribute";s:11:"phpdoc_name";s:9:"attribute";}i:1;a:5:{s:4:"name";s:7:"compare";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The comparison";s:11:"phpdoc_name";s:7:"compare";}}s:4:"name";s:18:"db_string_equal_to";s:11:"description";s:83:"Encode an SQL statement fragment for a conditional to see if two strings are equal.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:7:"The SQL";}}s:22:"db_string_not_equal_to";a:6:{s:8:"filename";s:24:"sources/database/ibm.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:9:"attribute";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The attribute";s:11:"phpdoc_name";s:9:"attribute";}i:1;a:5:{s:4:"name";s:7:"compare";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The comparison";s:11:"phpdoc_name";s:7:"compare";}}s:4:"name";s:22:"db_string_not_equal_to";s:11:"description";s:87:"Encode an SQL statement fragment for a conditional to see if two strings are not equal.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:7:"The SQL";}}s:16:"db_empty_is_null";a:6:{s:8:"filename";s:24:"sources/database/ibm.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"db_empty_is_null";s:11:"description";s:173:"This function is internal to the database system, allowing SQL statements to be build up appropriately. Some databases require IS NULL to be used to check for blank strings.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether a blank string IS NULL";}}s:23:"db_drop_table_if_exists";a:5:{s:8:"filename";s:24:"sources/database/ibm.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"table";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The table name";s:11:"phpdoc_name";s:5:"table";}i:1;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:30:"The DB connection to delete on";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:23:"db_drop_table_if_exists";s:11:"description";s:15:"Delete a table.";s:5:"flags";a:0:{}}s:22:"db_is_flat_file_simple";a:6:{s:8:"filename";s:24:"sources/database/ibm.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"db_is_flat_file_simple";s:11:"description";s:117:"Determine whether the database is a flat file database, and thus not have a meaningful connect username and password.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:44:"Whether the database is a flat file database";}}s:14:"db_encode_like";a:6:{s:8:"filename";s:24:"sources/database/ibm.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"pattern";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:11:"The pattern";s:11:"phpdoc_name";s:7:"pattern";}}s:4:"name";s:14:"db_encode_like";s:11:"description";s:136:"Encode a LIKE string comparision fragement for the database system. The pattern is a mixture of characters and ? and % wildcard symbols.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:19:"The encoded pattern";}}s:20:"db_close_connections";a:5:{s:8:"filename";s:24:"sources/database/ibm.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"db_close_connections";s:11:"description";s:130:"Close the database connections. We don't really need to close them (will close at exit), just disassociate so we can refresh them.";s:5:"flags";a:0:{}}s:17:"db_get_connection";a:6:{s:8:"filename";s:24:"sources/database/ibm.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:10:"persistent";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:41:"Whether to create a persistent connection";s:11:"phpdoc_name";s:10:"persistent";}i:1;a:5:{s:4:"name";s:7:"db_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:17:"The database name";s:11:"phpdoc_name";s:7:"db_name";}i:2;a:5:{s:4:"name";s:7:"db_host";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:30:"The database host (the server)";s:11:"phpdoc_name";s:7:"db_host";}i:3;a:5:{s:4:"name";s:7:"db_user";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:32:"The database connection username";s:11:"phpdoc_name";s:7:"db_user";}i:4;a:5:{s:4:"name";s:11:"db_password";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:32:"The database connection password";s:11:"phpdoc_name";s:11:"db_password";}i:5;a:7:{s:4:"name";s:7:"fail_ok";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:93:"Whether to on error echo an error and return with a null, rather than giving a critical error";s:11:"phpdoc_name";s:7:"fail_ok";}}s:4:"name";s:17:"db_get_connection";s:11:"description";s:128:"Get a database connection. This function shouldn't be used by you, as a connection to the database is established automatically.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:36:"A database connection (null: failed)";}}s:16:"db_has_full_text";a:6:{s:8:"filename";s:24:"sources/database/ibm.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"A DB connection";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:16:"db_has_full_text";s:11:"description";s:40:"Find whether full-text-search is present";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:13:"Whether it is";}}s:16:"db_escape_string";a:6:{s:8:"filename";s:24:"sources/database/ibm.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:10:"The string";s:11:"phpdoc_name";s:6:"string";}}s:4:"name";s:16:"db_escape_string";s:11:"description";s:234:"Escape a string so it may be inserted into a query. If SQL statements are being built up and passed using db_query then it is essential that this is used for security reasons. Otherwise, the abstraction layer deals with the situation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:18:"The escaped string";}}s:8:"db_query";a:6:{s:8:"filename";s:24:"sources/database/ibm.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:5:"query";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:22:"The complete SQL query";s:11:"phpdoc_name";s:5:"query";}i:1;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"A DB connection";s:11:"phpdoc_name";s:2:"db";}i:2;a:7:{s:4:"name";s:3:"max";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"The maximum number of rows to affect (null: no limit)";s:11:"phpdoc_name";s:3:"max";}i:3;a:7:{s:4:"name";s:5:"start";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:48:"The start row to affect (null: no specification)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:7:"fail_ok";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:37:"Whether to output an error on failure";s:11:"phpdoc_name";s:7:"fail_ok";}i:5;a:7:{s:4:"name";s:13:"get_insert_id";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:63:"Whether to get the autoincrement ID created for an insert query";s:11:"phpdoc_name";s:13:"get_insert_id";}}s:4:"name";s:8:"db_query";s:11:"description";s:126:"This function is a very basic query executor. It shouldn't usually be used by you, as there are abstracted versions available.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:48:"The results (null: no results), or the insert ID";}}s:17:"db_get_query_rows";a:6:{s:8:"filename";s:24:"sources/database/ibm.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:7:"results";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:24:"The query result pointer";s:11:"phpdoc_name";s:7:"results";}i:1;a:7:{s:4:"name";s:5:"start";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:70:"Whether to start reading from (null: irrelevant for this forum driver)";s:11:"phpdoc_name";s:5:"start";}}s:4:"name";s:17:"db_get_query_rows";s:11:"description";s:42:"Get the rows returned from a SELECT query.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:18:"A list of row maps";}}}s:4:"name";s:19:"Database_Static_ibm";s:7:"comment";b:1;}s:21:"Database_Static_mysql";a:3:{s:9:"functions";a:8:{s:17:"db_get_connection";a:6:{s:8:"filename";s:26:"sources/database/mysql.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:10:"persistent";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:41:"Whether to create a persistent connection";s:11:"phpdoc_name";s:10:"persistent";}i:1;a:5:{s:4:"name";s:7:"db_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:17:"The database name";s:11:"phpdoc_name";s:7:"db_name";}i:2;a:5:{s:4:"name";s:7:"db_host";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:30:"The database host (the server)";s:11:"phpdoc_name";s:7:"db_host";}i:3;a:5:{s:4:"name";s:7:"db_user";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:32:"The database connection username";s:11:"phpdoc_name";s:7:"db_user";}i:4;a:5:{s:4:"name";s:11:"db_password";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:32:"The database connection password";s:11:"phpdoc_name";s:11:"db_password";}i:5;a:7:{s:4:"name";s:7:"fail_ok";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:93:"Whether to on error echo an error and return with a null, rather than giving a critical error";s:11:"phpdoc_name";s:7:"fail_ok";}}s:4:"name";s:17:"db_get_connection";s:11:"description";s:128:"Get a database connection. This function shouldn't be used by you, as a connection to the database is established automatically.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:181:"A database connection (note for MySQL, it's actually a pair, containing the database name too: because we need to select the name before each query on the connection) (null: failed)";}}s:16:"db_has_full_text";a:6:{s:8:"filename";s:26:"sources/database/mysql.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"A DB connection";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:16:"db_has_full_text";s:11:"description";s:40:"Find whether full-text-search is present";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:13:"Whether it is";}}s:17:"db_has_subqueries";a:6:{s:8:"filename";s:26:"sources/database/mysql.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"A DB connection";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:17:"db_has_subqueries";s:11:"description";s:40:"Find whether subquery support is present";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:13:"Whether it is";}}s:23:"db_has_collate_settings";a:6:{s:8:"filename";s:26:"sources/database/mysql.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"A DB connection";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:23:"db_has_collate_settings";s:11:"description";s:39:"Find whether collate support is present";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:13:"Whether it is";}}s:24:"db_has_full_text_boolean";a:6:{s:8:"filename";s:26:"sources/database/mysql.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"db_has_full_text_boolean";s:11:"description";s:48:"Find whether full-text-boolean-search is present";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:13:"Whether it is";}}s:16:"db_escape_string";a:6:{s:8:"filename";s:26:"sources/database/mysql.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:10:"The string";s:11:"phpdoc_name";s:6:"string";}}s:4:"name";s:16:"db_escape_string";s:11:"description";s:234:"Escape a string so it may be inserted into a query. If SQL statements are being built up and passed using db_query then it is essential that this is used for security reasons. Otherwise, the abstraction layer deals with the situation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:18:"The escaped string";}}s:8:"db_query";a:6:{s:8:"filename";s:26:"sources/database/mysql.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:5:"query";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:22:"The complete SQL query";s:11:"phpdoc_name";s:5:"query";}i:1;a:5:{s:4:"name";s:8:"db_parts";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"A DB connection";s:11:"phpdoc_name";s:8:"db_parts";}i:2;a:7:{s:4:"name";s:3:"max";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"The maximum number of rows to affect (null: no limit)";s:11:"phpdoc_name";s:3:"max";}i:3;a:7:{s:4:"name";s:5:"start";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:48:"The start row to affect (null: no specification)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:7:"fail_ok";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:37:"Whether to output an error on failure";s:11:"phpdoc_name";s:7:"fail_ok";}i:5;a:7:{s:4:"name";s:13:"get_insert_id";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:63:"Whether to get the autoincrement ID created for an insert query";s:11:"phpdoc_name";s:13:"get_insert_id";}}s:4:"name";s:8:"db_query";s:11:"description";s:126:"This function is a very basic query executor. It shouldn't usually be used by you, as there are abstracted versions available.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:48:"The results (null: no results), or the insert ID";}}s:17:"db_get_query_rows";a:6:{s:8:"filename";s:26:"sources/database/mysql.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"results";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:24:"The query result pointer";s:11:"phpdoc_name";s:7:"results";}}s:4:"name";s:17:"db_get_query_rows";s:11:"description";s:42:"Get the rows returned from a SELECT query.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:18:"A list of row maps";}}}s:4:"name";s:21:"Database_Static_mysql";s:7:"comment";b:1;}s:25:"Database_Static_mysql_dbx";a:3:{s:9:"functions";a:8:{s:17:"db_get_connection";a:6:{s:8:"filename";s:30:"sources/database/mysql_dbx.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:10:"persistent";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:41:"Whether to create a persistent connection";s:11:"phpdoc_name";s:10:"persistent";}i:1;a:5:{s:4:"name";s:7:"db_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:17:"The database name";s:11:"phpdoc_name";s:7:"db_name";}i:2;a:5:{s:4:"name";s:7:"db_host";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:30:"The database host (the server)";s:11:"phpdoc_name";s:7:"db_host";}i:3;a:5:{s:4:"name";s:7:"db_user";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:32:"The database connection username";s:11:"phpdoc_name";s:7:"db_user";}i:4;a:5:{s:4:"name";s:11:"db_password";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:32:"The database connection password";s:11:"phpdoc_name";s:11:"db_password";}i:5;a:7:{s:4:"name";s:7:"fail_ok";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:93:"Whether to on error echo an error and return with a null, rather than giving a critical error";s:11:"phpdoc_name";s:7:"fail_ok";}}s:4:"name";s:17:"db_get_connection";s:11:"description";s:128:"Get a database connection. This function shouldn't be used by you, as a connection to the database is established automatically.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:180:"A database connection (note for MySQL, it's actually a pair, containing the database name too: because we need to select the name before each query on the connection) (null: error)";}}s:16:"db_has_full_text";a:6:{s:8:"filename";s:30:"sources/database/mysql_dbx.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"A DB connection";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:16:"db_has_full_text";s:11:"description";s:40:"Find whether full-text-search is present";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:13:"Whether it is";}}s:17:"db_has_subqueries";a:6:{s:8:"filename";s:30:"sources/database/mysql_dbx.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"A DB connection";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:17:"db_has_subqueries";s:11:"description";s:40:"Find whether subquery support is present";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:13:"Whether it is";}}s:23:"db_has_collate_settings";a:6:{s:8:"filename";s:30:"sources/database/mysql_dbx.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"A DB connection";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:23:"db_has_collate_settings";s:11:"description";s:39:"Find whether collate support is present";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:13:"Whether it is";}}s:24:"db_has_full_text_boolean";a:6:{s:8:"filename";s:30:"sources/database/mysql_dbx.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"db_has_full_text_boolean";s:11:"description";s:48:"Find whether full-text-boolean-search is present";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:13:"Whether it is";}}s:16:"db_escape_string";a:6:{s:8:"filename";s:30:"sources/database/mysql_dbx.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:10:"The string";s:11:"phpdoc_name";s:6:"string";}}s:4:"name";s:16:"db_escape_string";s:11:"description";s:234:"Escape a string so it may be inserted into a query. If SQL statements are being built up and passed using db_query then it is essential that this is used for security reasons. Otherwise, the abstraction layer deals with the situation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:18:"The escaped string";}}s:8:"db_query";a:6:{s:8:"filename";s:30:"sources/database/mysql_dbx.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:5:"query";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:22:"The complete SQL query";s:11:"phpdoc_name";s:5:"query";}i:1;a:5:{s:4:"name";s:8:"db_parts";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"A DB connection";s:11:"phpdoc_name";s:8:"db_parts";}i:2;a:7:{s:4:"name";s:3:"max";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"The maximum number of rows to affect (null: no limit)";s:11:"phpdoc_name";s:3:"max";}i:3;a:7:{s:4:"name";s:5:"start";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:48:"The start row to affect (null: no specification)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:7:"fail_ok";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:37:"Whether to output an error on failure";s:11:"phpdoc_name";s:7:"fail_ok";}i:5;a:7:{s:4:"name";s:13:"get_insert_id";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:63:"Whether to get the autoincrement ID created for an insert query";s:11:"phpdoc_name";s:13:"get_insert_id";}}s:4:"name";s:8:"db_query";s:11:"description";s:126:"This function is a very basic query executor. It shouldn't usually be used by you, as there are abstracted versions available.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:48:"The results (null: no results), or the insert ID";}}s:17:"db_get_query_rows";a:6:{s:8:"filename";s:30:"sources/database/mysql_dbx.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"results";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:24:"The query result pointer";s:11:"phpdoc_name";s:7:"results";}}s:4:"name";s:17:"db_get_query_rows";s:11:"description";s:42:"Get the rows returned from a SELECT query.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:18:"A list of row maps";}}}s:4:"name";s:25:"Database_Static_mysql_dbx";s:7:"comment";b:1;}s:22:"Database_Static_mysqli";a:3:{s:9:"functions";a:8:{s:17:"db_get_connection";a:6:{s:8:"filename";s:27:"sources/database/mysqli.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:10:"persistent";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:41:"Whether to create a persistent connection";s:11:"phpdoc_name";s:10:"persistent";}i:1;a:5:{s:4:"name";s:7:"db_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:17:"The database name";s:11:"phpdoc_name";s:7:"db_name";}i:2;a:5:{s:4:"name";s:7:"db_host";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:30:"The database host (the server)";s:11:"phpdoc_name";s:7:"db_host";}i:3;a:5:{s:4:"name";s:7:"db_user";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:32:"The database connection username";s:11:"phpdoc_name";s:7:"db_user";}i:4;a:5:{s:4:"name";s:11:"db_password";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:32:"The database connection password";s:11:"phpdoc_name";s:11:"db_password";}i:5;a:7:{s:4:"name";s:7:"fail_ok";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:93:"Whether to on error echo an error and return with a null, rather than giving a critical error";s:11:"phpdoc_name";s:7:"fail_ok";}}s:4:"name";s:17:"db_get_connection";s:11:"description";s:128:"Get a database connection. This function shouldn't be used by you, as a connection to the database is established automatically.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:180:"A database connection (note for MySQL, it's actually a pair, containing the database name too: because we need to select the name before each query on the connection) (null: error)";}}s:16:"db_has_full_text";a:6:{s:8:"filename";s:27:"sources/database/mysqli.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"A DB connection";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:16:"db_has_full_text";s:11:"description";s:40:"Find whether full-text-search is present";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:13:"Whether it is";}}s:17:"db_has_subqueries";a:6:{s:8:"filename";s:27:"sources/database/mysqli.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"A DB connection";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:17:"db_has_subqueries";s:11:"description";s:40:"Find whether subquery support is present";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:13:"Whether it is";}}s:23:"db_has_collate_settings";a:6:{s:8:"filename";s:27:"sources/database/mysqli.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"A DB connection";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:23:"db_has_collate_settings";s:11:"description";s:39:"Find whether collate support is present";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:13:"Whether it is";}}s:24:"db_has_full_text_boolean";a:6:{s:8:"filename";s:27:"sources/database/mysqli.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"db_has_full_text_boolean";s:11:"description";s:48:"Find whether full-text-boolean-search is present";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:13:"Whether it is";}}s:16:"db_escape_string";a:6:{s:8:"filename";s:27:"sources/database/mysqli.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:10:"The string";s:11:"phpdoc_name";s:6:"string";}}s:4:"name";s:16:"db_escape_string";s:11:"description";s:234:"Escape a string so it may be inserted into a query. If SQL statements are being built up and passed using db_query then it is essential that this is used for security reasons. Otherwise, the abstraction layer deals with the situation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:18:"The escaped string";}}s:8:"db_query";a:6:{s:8:"filename";s:27:"sources/database/mysqli.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:5:"query";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:22:"The complete SQL query";s:11:"phpdoc_name";s:5:"query";}i:1;a:5:{s:4:"name";s:8:"db_parts";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"A DB connection";s:11:"phpdoc_name";s:8:"db_parts";}i:2;a:7:{s:4:"name";s:3:"max";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"The maximum number of rows to affect (null: no limit)";s:11:"phpdoc_name";s:3:"max";}i:3;a:7:{s:4:"name";s:5:"start";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:48:"The start row to affect (null: no specification)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:7:"fail_ok";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:37:"Whether to output an error on failure";s:11:"phpdoc_name";s:7:"fail_ok";}i:5;a:7:{s:4:"name";s:13:"get_insert_id";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:63:"Whether to get the autoincrement ID created for an insert query";s:11:"phpdoc_name";s:13:"get_insert_id";}}s:4:"name";s:8:"db_query";s:11:"description";s:126:"This function is a very basic query executor. It shouldn't usually be used by you, as there are abstracted versions available.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:48:"The results (null: no results), or the insert ID";}}s:17:"db_get_query_rows";a:6:{s:8:"filename";s:27:"sources/database/mysqli.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"results";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:24:"The query result pointer";s:11:"phpdoc_name";s:7:"results";}}s:4:"name";s:17:"db_get_query_rows";s:11:"description";s:42:"Get the rows returned from a SELECT query.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:18:"A list of row maps";}}}s:4:"name";s:22:"Database_Static_mysqli";s:7:"comment";b:1;}s:22:"Database_Static_oracle";a:3:{s:9:"functions";a:21:{s:15:"db_default_user";a:6:{s:8:"filename";s:27:"sources/database/oracle.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"db_default_user";s:11:"description";s:84:"Get the default user for making db connections (used by the installer as a default).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:35:"The default user for db connections";}}s:19:"db_default_password";a:6:{s:8:"filename";s:27:"sources/database/oracle.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"db_default_password";s:11:"description";s:88:"Get the default password for making db connections (used by the installer as a default).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:39:"The default password for db connections";}}s:15:"db_create_index";a:5:{s:8:"filename";s:27:"sources/database/oracle.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:10:"table_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:44:"The name of the table to create the index on";s:11:"phpdoc_name";s:10:"table_name";}i:1;a:5:{s:4:"name";s:10:"index_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:44:"The index name (not really important at all)";s:11:"phpdoc_name";s:10:"index_name";}i:2;a:5:{s:4:"name";s:7:"_fields";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:75:"Part of the SQL query: a comma-separated list of fields to use on the index";s:11:"phpdoc_name";s:7:"_fields";}i:3;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:28:"The DB connection to make on";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:15:"db_create_index";s:11:"description";s:21:"Create a table index.";s:5:"flags";a:0:{}}s:21:"db_change_primary_key";a:5:{s:8:"filename";s:27:"sources/database/oracle.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:10:"table_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:44:"The name of the table to create the index on";s:11:"phpdoc_name";s:10:"table_name";}i:1;a:5:{s:4:"name";s:7:"new_key";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:38:"A list of fields to put in the new key";s:11:"phpdoc_name";s:7:"new_key";}i:2;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:28:"The DB connection to make on";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:21:"db_change_primary_key";s:11:"description";s:34:"Change the primary key of a table.";s:5:"flags";a:0:{}}s:21:"db_full_text_assemble";a:6:{s:8:"filename";s:27:"sources/database/oracle.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:7:"content";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:56:"Our match string (assumes "?" has been stripped already)";s:11:"phpdoc_name";s:7:"content";}i:1;a:5:{s:4:"name";s:7:"boolean";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:40:"Whether to do a boolean full text search";s:11:"phpdoc_name";s:7:"boolean";}}s:4:"name";s:21:"db_full_text_assemble";s:11:"description";s:58:"Assemble part of a WHERE clause for doing full-text search";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:49:"Part of a WHERE clause for doing full-text search";}}s:15:"db_get_first_id";a:6:{s:8:"filename";s:27:"sources/database/oracle.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"db_get_first_id";s:11:"description";s:102:"Get the ID of the first row in an auto-increment table (used whenever we need to reference the first).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:13:"First ID used";}}s:17:"db_get_type_remap";a:6:{s:8:"filename";s:27:"sources/database/oracle.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"db_get_type_remap";s:11:"description";s:59:"Get a map of Composr field types, to actual database types.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:7:"The map";}}s:15:"db_create_table";a:5:{s:8:"filename";s:27:"sources/database/oracle.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:10:"table_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The table name";s:11:"phpdoc_name";s:10:"table_name";}i:1;a:5:{s:4:"name";s:6:"fields";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:64:"A map of field names to Composr field types (with *#? encodings)";s:11:"phpdoc_name";s:6:"fields";}i:2;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:28:"The DB connection to make on";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:15:"db_create_table";s:11:"description";s:19:"Create a new table.";s:5:"flags";a:0:{}}s:18:"db_string_equal_to";a:6:{s:8:"filename";s:27:"sources/database/oracle.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:9:"attribute";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The attribute";s:11:"phpdoc_name";s:9:"attribute";}i:1;a:5:{s:4:"name";s:7:"compare";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The comparison";s:11:"phpdoc_name";s:7:"compare";}}s:4:"name";s:18:"db_string_equal_to";s:11:"description";s:83:"Encode an SQL statement fragment for a conditional to see if two strings are equal.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:7:"The SQL";}}s:22:"db_string_not_equal_to";a:6:{s:8:"filename";s:27:"sources/database/oracle.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:9:"attribute";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The attribute";s:11:"phpdoc_name";s:9:"attribute";}i:1;a:5:{s:4:"name";s:7:"compare";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The comparison";s:11:"phpdoc_name";s:7:"compare";}}s:4:"name";s:22:"db_string_not_equal_to";s:11:"description";s:87:"Encode an SQL statement fragment for a conditional to see if two strings are not equal.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:7:"The SQL";}}s:16:"db_empty_is_null";a:6:{s:8:"filename";s:27:"sources/database/oracle.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"db_empty_is_null";s:11:"description";s:173:"This function is internal to the database system, allowing SQL statements to be build up appropriately. Some databases require IS NULL to be used to check for blank strings.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether a blank string IS NULL";}}s:23:"db_drop_table_if_exists";a:5:{s:8:"filename";s:27:"sources/database/oracle.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"table";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The table name";s:11:"phpdoc_name";s:5:"table";}i:1;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:30:"The DB connection to delete on";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:23:"db_drop_table_if_exists";s:11:"description";s:15:"Delete a table.";s:5:"flags";a:0:{}}s:22:"db_is_flat_file_simple";a:6:{s:8:"filename";s:27:"sources/database/oracle.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"db_is_flat_file_simple";s:11:"description";s:117:"Determine whether the database is a flat file database, and thus not have a meaningful connect username and password.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:44:"Whether the database is a flat file database";}}s:14:"db_encode_like";a:6:{s:8:"filename";s:27:"sources/database/oracle.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"pattern";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:11:"The pattern";s:11:"phpdoc_name";s:7:"pattern";}}s:4:"name";s:14:"db_encode_like";s:11:"description";s:136:"Encode a LIKE string comparision fragement for the database system. The pattern is a mixture of characters and ? and % wildcard symbols.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:19:"The encoded pattern";}}s:20:"db_close_connections";a:5:{s:8:"filename";s:27:"sources/database/oracle.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"db_close_connections";s:11:"description";s:130:"Close the database connections. We don't really need to close them (will close at exit), just disassociate so we can refresh them.";s:5:"flags";a:0:{}}s:17:"db_get_connection";a:6:{s:8:"filename";s:27:"sources/database/oracle.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:10:"persistent";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:41:"Whether to create a persistent connection";s:11:"phpdoc_name";s:10:"persistent";}i:1;a:5:{s:4:"name";s:7:"db_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:17:"The database name";s:11:"phpdoc_name";s:7:"db_name";}i:2;a:5:{s:4:"name";s:7:"db_host";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:30:"The database host (the server)";s:11:"phpdoc_name";s:7:"db_host";}i:3;a:5:{s:4:"name";s:7:"db_user";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:32:"The database connection username";s:11:"phpdoc_name";s:7:"db_user";}i:4;a:5:{s:4:"name";s:11:"db_password";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:32:"The database connection password";s:11:"phpdoc_name";s:11:"db_password";}i:5;a:7:{s:4:"name";s:7:"fail_ok";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:93:"Whether to on error echo an error and return with a null, rather than giving a critical error";s:11:"phpdoc_name";s:7:"fail_ok";}}s:4:"name";s:17:"db_get_connection";s:11:"description";s:128:"Get a database connection. This function shouldn't be used by you, as a connection to the database is established automatically.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:36:"A database connection (null: failed)";}}s:16:"db_has_full_text";a:6:{s:8:"filename";s:27:"sources/database/oracle.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"A DB connection";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:16:"db_has_full_text";s:11:"description";s:40:"Find whether full-text-search is present";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:13:"Whether it is";}}s:24:"db_has_full_text_boolean";a:6:{s:8:"filename";s:27:"sources/database/oracle.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"db_has_full_text_boolean";s:11:"description";s:48:"Find whether full-text-boolean-search is present";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:13:"Whether it is";}}s:16:"db_escape_string";a:6:{s:8:"filename";s:27:"sources/database/oracle.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:10:"The string";s:11:"phpdoc_name";s:6:"string";}}s:4:"name";s:16:"db_escape_string";s:11:"description";s:234:"Escape a string so it may be inserted into a query. If SQL statements are being built up and passed using db_query then it is essential that this is used for security reasons. Otherwise, the abstraction layer deals with the situation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:18:"The escaped string";}}s:8:"db_query";a:6:{s:8:"filename";s:27:"sources/database/oracle.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:5:"query";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:22:"The complete SQL query";s:11:"phpdoc_name";s:5:"query";}i:1;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"A DB connection";s:11:"phpdoc_name";s:2:"db";}i:2;a:7:{s:4:"name";s:3:"max";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"The maximum number of rows to affect (null: no limit)";s:11:"phpdoc_name";s:3:"max";}i:3;a:7:{s:4:"name";s:5:"start";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:48:"The start row to affect (null: no specification)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:7:"fail_ok";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:37:"Whether to output an error on failure";s:11:"phpdoc_name";s:7:"fail_ok";}i:5;a:7:{s:4:"name";s:13:"get_insert_id";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:63:"Whether to get the autoincrement ID created for an insert query";s:11:"phpdoc_name";s:13:"get_insert_id";}}s:4:"name";s:8:"db_query";s:11:"description";s:126:"This function is a very basic query executor. It shouldn't usually be used by you, as there are abstracted versions available.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:48:"The results (null: no results), or the insert ID";}}s:17:"db_get_query_rows";a:6:{s:8:"filename";s:27:"sources/database/oracle.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"stmt";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:24:"The query result pointer";s:11:"phpdoc_name";s:4:"stmt";}i:1;a:7:{s:4:"name";s:5:"start";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:70:"Whether to start reading from (null: irrelevant for this forum driver)";s:11:"phpdoc_name";s:5:"start";}}s:4:"name";s:17:"db_get_query_rows";s:11:"description";s:42:"Get the rows returned from a SELECT query.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:18:"A list of row maps";}}}s:4:"name";s:22:"Database_Static_oracle";s:7:"comment";b:1;}s:26:"Database_Static_postgresql";a:3:{s:9:"functions";a:19:{s:15:"db_default_user";a:6:{s:8:"filename";s:31:"sources/database/postgresql.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"db_default_user";s:11:"description";s:84:"Get the default user for making db connections (used by the installer as a default).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:35:"The default user for db connections";}}s:19:"db_default_password";a:6:{s:8:"filename";s:31:"sources/database/postgresql.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"db_default_password";s:11:"description";s:88:"Get the default password for making db connections (used by the installer as a default).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:39:"The default password for db connections";}}s:15:"db_create_index";a:5:{s:8:"filename";s:31:"sources/database/postgresql.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:10:"table_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:44:"The name of the table to create the index on";s:11:"phpdoc_name";s:10:"table_name";}i:1;a:5:{s:4:"name";s:10:"index_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:44:"The index name (not really important at all)";s:11:"phpdoc_name";s:10:"index_name";}i:2;a:5:{s:4:"name";s:7:"_fields";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:75:"Part of the SQL query: a comma-separated list of fields to use on the index";s:11:"phpdoc_name";s:7:"_fields";}i:3;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:28:"The DB connection to make on";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:15:"db_create_index";s:11:"description";s:21:"Create a table index.";s:5:"flags";a:0:{}}s:21:"db_change_primary_key";a:5:{s:8:"filename";s:31:"sources/database/postgresql.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:10:"table_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:44:"The name of the table to create the index on";s:11:"phpdoc_name";s:10:"table_name";}i:1;a:5:{s:4:"name";s:7:"new_key";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:38:"A list of fields to put in the new key";s:11:"phpdoc_name";s:7:"new_key";}i:2;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:28:"The DB connection to make on";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:21:"db_change_primary_key";s:11:"description";s:34:"Change the primary key of a table.";s:5:"flags";a:0:{}}s:15:"db_get_first_id";a:6:{s:8:"filename";s:31:"sources/database/postgresql.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"db_get_first_id";s:11:"description";s:102:"Get the ID of the first row in an auto-increment table (used whenever we need to reference the first).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:13:"First ID used";}}s:17:"db_get_type_remap";a:6:{s:8:"filename";s:31:"sources/database/postgresql.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"db_get_type_remap";s:11:"description";s:59:"Get a map of Composr field types, to actual database types.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:7:"The map";}}s:20:"db_close_connections";a:5:{s:8:"filename";s:31:"sources/database/postgresql.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"db_close_connections";s:11:"description";s:130:"Close the database connections. We don't really need to close them (will close at exit), just disassociate so we can refresh them.";s:5:"flags";a:0:{}}s:15:"db_create_table";a:5:{s:8:"filename";s:31:"sources/database/postgresql.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:10:"table_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The table name";s:11:"phpdoc_name";s:10:"table_name";}i:1;a:5:{s:4:"name";s:6:"fields";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:64:"A map of field names to Composr field types (with *#? encodings)";s:11:"phpdoc_name";s:6:"fields";}i:2;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:28:"The DB connection to make on";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:15:"db_create_table";s:11:"description";s:19:"Create a new table.";s:5:"flags";a:0:{}}s:18:"db_string_equal_to";a:6:{s:8:"filename";s:31:"sources/database/postgresql.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:9:"attribute";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The attribute";s:11:"phpdoc_name";s:9:"attribute";}i:1;a:5:{s:4:"name";s:7:"compare";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The comparison";s:11:"phpdoc_name";s:7:"compare";}}s:4:"name";s:18:"db_string_equal_to";s:11:"description";s:83:"Encode an SQL statement fragment for a conditional to see if two strings are equal.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:7:"The SQL";}}s:22:"db_string_not_equal_to";a:6:{s:8:"filename";s:31:"sources/database/postgresql.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:9:"attribute";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The attribute";s:11:"phpdoc_name";s:9:"attribute";}i:1;a:5:{s:4:"name";s:7:"compare";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The comparison";s:11:"phpdoc_name";s:7:"compare";}}s:4:"name";s:22:"db_string_not_equal_to";s:11:"description";s:87:"Encode an SQL statement fragment for a conditional to see if two strings are not equal.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:7:"The SQL";}}s:16:"db_empty_is_null";a:6:{s:8:"filename";s:31:"sources/database/postgresql.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"db_empty_is_null";s:11:"description";s:173:"This function is internal to the database system, allowing SQL statements to be build up appropriately. Some databases require IS NULL to be used to check for blank strings.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether a blank string IS NULL";}}s:23:"db_drop_table_if_exists";a:5:{s:8:"filename";s:31:"sources/database/postgresql.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"table";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The table name";s:11:"phpdoc_name";s:5:"table";}i:1;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:30:"The DB connection to delete on";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:23:"db_drop_table_if_exists";s:11:"description";s:15:"Delete a table.";s:5:"flags";a:0:{}}s:22:"db_is_flat_file_simple";a:6:{s:8:"filename";s:31:"sources/database/postgresql.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"db_is_flat_file_simple";s:11:"description";s:117:"Determine whether the database is a flat file database, and thus not have a meaningful connect username and password.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:44:"Whether the database is a flat file database";}}s:14:"db_encode_like";a:6:{s:8:"filename";s:31:"sources/database/postgresql.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"pattern";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:11:"The pattern";s:11:"phpdoc_name";s:7:"pattern";}}s:4:"name";s:14:"db_encode_like";s:11:"description";s:136:"Encode a LIKE string comparision fragement for the database system. The pattern is a mixture of characters and ? and % wildcard symbols.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:19:"The encoded pattern";}}s:17:"db_get_connection";a:6:{s:8:"filename";s:31:"sources/database/postgresql.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:10:"persistent";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:41:"Whether to create a persistent connection";s:11:"phpdoc_name";s:10:"persistent";}i:1;a:5:{s:4:"name";s:7:"db_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:17:"The database name";s:11:"phpdoc_name";s:7:"db_name";}i:2;a:5:{s:4:"name";s:7:"db_host";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:30:"The database host (the server)";s:11:"phpdoc_name";s:7:"db_host";}i:3;a:5:{s:4:"name";s:7:"db_user";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:32:"The database connection username";s:11:"phpdoc_name";s:7:"db_user";}i:4;a:5:{s:4:"name";s:11:"db_password";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:32:"The database connection password";s:11:"phpdoc_name";s:11:"db_password";}i:5;a:7:{s:4:"name";s:7:"fail_ok";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:93:"Whether to on error echo an error and return with a null, rather than giving a critical error";s:11:"phpdoc_name";s:7:"fail_ok";}}s:4:"name";s:17:"db_get_connection";s:11:"description";s:128:"Get a database connection. This function shouldn't be used by you, as a connection to the database is established automatically.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:36:"A database connection (null: failed)";}}s:16:"db_has_full_text";a:6:{s:8:"filename";s:31:"sources/database/postgresql.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"A DB connection";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:16:"db_has_full_text";s:11:"description";s:40:"Find whether full-text-search is present";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:13:"Whether it is";}}s:16:"db_escape_string";a:6:{s:8:"filename";s:31:"sources/database/postgresql.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:10:"The string";s:11:"phpdoc_name";s:6:"string";}}s:4:"name";s:16:"db_escape_string";s:11:"description";s:234:"Escape a string so it may be inserted into a query. If SQL statements are being built up and passed using db_query then it is essential that this is used for security reasons. Otherwise, the abstraction layer deals with the situation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:18:"The escaped string";}}s:8:"db_query";a:6:{s:8:"filename";s:31:"sources/database/postgresql.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:5:"query";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:22:"The complete SQL query";s:11:"phpdoc_name";s:5:"query";}i:1;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"A DB connection";s:11:"phpdoc_name";s:2:"db";}i:2;a:7:{s:4:"name";s:3:"max";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"The maximum number of rows to affect (null: no limit)";s:11:"phpdoc_name";s:3:"max";}i:3;a:7:{s:4:"name";s:5:"start";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:48:"The start row to affect (null: no specification)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:7:"fail_ok";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:37:"Whether to output an error on failure";s:11:"phpdoc_name";s:7:"fail_ok";}i:5;a:7:{s:4:"name";s:13:"get_insert_id";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:63:"Whether to get the autoincrement ID created for an insert query";s:11:"phpdoc_name";s:13:"get_insert_id";}}s:4:"name";s:8:"db_query";s:11:"description";s:126:"This function is a very basic query executor. It shouldn't usually be used by you, as there are abstracted versions available.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:48:"The results (null: no results), or the insert ID";}}s:17:"db_get_query_rows";a:6:{s:8:"filename";s:31:"sources/database/postgresql.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:7:"results";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:24:"The query result pointer";s:11:"phpdoc_name";s:7:"results";}i:1;a:7:{s:4:"name";s:5:"start";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:70:"Whether to start reading from (null: irrelevant for this forum driver)";s:11:"phpdoc_name";s:5:"start";}}s:4:"name";s:17:"db_get_query_rows";s:11:"description";s:42:"Get the rows returned from a SELECT query.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:18:"A list of row maps";}}}s:4:"name";s:26:"Database_Static_postgresql";s:7:"comment";b:1;}s:20:"Database_super_mysql";a:3:{s:9:"functions";a:21:{s:21:"can_arbitrary_groupby";a:6:{s:8:"filename";s:33:"sources/database/shared/mysql.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"can_arbitrary_groupby";s:11:"description";s:148:"Find whether the database may run GROUP BY unfettered with restrictions on the SELECT'd fields having to be represented in it or aggregate functions";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Whether it can";}}s:15:"db_default_user";a:6:{s:8:"filename";s:33:"sources/database/shared/mysql.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"db_default_user";s:11:"description";s:84:"Get the default user for making db connections (used by the installer as a default).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:35:"The default user for db connections";}}s:19:"db_default_password";a:6:{s:8:"filename";s:33:"sources/database/shared/mysql.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"db_default_password";s:11:"description";s:88:"Get the default password for making db connections (used by the installer as a default).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:39:"The default password for db connections";}}s:15:"db_create_index";a:5:{s:8:"filename";s:33:"sources/database/shared/mysql.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:10:"table_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:44:"The name of the table to create the index on";s:11:"phpdoc_name";s:10:"table_name";}i:1;a:5:{s:4:"name";s:10:"index_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:44:"The index name (not really important at all)";s:11:"phpdoc_name";s:10:"index_name";}i:2;a:5:{s:4:"name";s:7:"_fields";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:75:"Part of the SQL query: a comma-separated list of fields to use on the index";s:11:"phpdoc_name";s:7:"_fields";}i:3;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:28:"The DB connection to make on";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:15:"db_create_index";s:11:"description";s:21:"Create a table index.";s:5:"flags";a:0:{}}s:19:"db_create_index_sql";a:6:{s:8:"filename";s:33:"sources/database/shared/mysql.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:10:"table_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:44:"The name of the table to create the index on";s:11:"phpdoc_name";s:10:"table_name";}i:1;a:5:{s:4:"name";s:10:"index_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:44:"The index name (not really important at all)";s:11:"phpdoc_name";s:10:"index_name";}i:2;a:5:{s:4:"name";s:7:"_fields";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:75:"Part of the SQL query: a comma-separated list of fields to use on the index";s:11:"phpdoc_name";s:7:"_fields";}}s:4:"name";s:19:"db_create_index_sql";s:11:"description";s:28:"SQL to create a table index.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:22:"SQL (null: do nothing)";}}s:21:"db_change_primary_key";a:5:{s:8:"filename";s:33:"sources/database/shared/mysql.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:10:"table_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:44:"The name of the table to create the index on";s:11:"phpdoc_name";s:10:"table_name";}i:1;a:5:{s:4:"name";s:7:"new_key";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:38:"A list of fields to put in the new key";s:11:"phpdoc_name";s:7:"new_key";}i:2;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:28:"The DB connection to make on";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:21:"db_change_primary_key";s:11:"description";s:34:"Change the primary key of a table.";s:5:"flags";a:0:{}}s:21:"db_full_text_assemble";a:6:{s:8:"filename";s:33:"sources/database/shared/mysql.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:7:"content";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:56:"Our match string (assumes "?" has been stripped already)";s:11:"phpdoc_name";s:7:"content";}i:1;a:5:{s:4:"name";s:7:"boolean";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:40:"Whether to do a boolean full text search";s:11:"phpdoc_name";s:7:"boolean";}}s:4:"name";s:21:"db_full_text_assemble";s:11:"description";s:58:"Assemble part of a WHERE clause for doing full-text search";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:49:"Part of a WHERE clause for doing full-text search";}}s:15:"db_get_first_id";a:6:{s:8:"filename";s:33:"sources/database/shared/mysql.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"db_get_first_id";s:11:"description";s:102:"Get the ID of the first row in an auto-increment table (used whenever we need to reference the first).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:13:"First ID used";}}s:17:"db_get_type_remap";a:6:{s:8:"filename";s:33:"sources/database/shared/mysql.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"db_get_type_remap";s:11:"description";s:59:"Get a map of Composr field types, to actual database types.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:7:"The map";}}s:12:"using_innodb";a:6:{s:8:"filename";s:33:"sources/database/shared/mysql.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"using_innodb";s:11:"description";s:94:"Whether to use InnoDB for MySQL. Change this function by hand - official only MyISAM supported";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:6:"Answer";}}s:15:"db_create_table";a:5:{s:8:"filename";s:33:"sources/database/shared/mysql.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:10:"table_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The table name";s:11:"phpdoc_name";s:10:"table_name";}i:1;a:5:{s:4:"name";s:6:"fields";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:64:"A map of field names to Composr field types (with *#? encodings)";s:11:"phpdoc_name";s:6:"fields";}i:2;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:28:"The DB connection to make on";s:11:"phpdoc_name";s:2:"db";}i:3;a:5:{s:4:"name";s:14:"raw_table_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:35:"The table name with no table prefix";s:11:"phpdoc_name";s:14:"raw_table_name";}i:4;a:7:{s:4:"name";s:10:"save_bytes";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:143:"Whether to use lower-byte table storage, with tradeoffs of not being able to support all unicode characters; use this if key length is an issue";s:11:"phpdoc_name";s:10:"save_bytes";}}s:4:"name";s:15:"db_create_table";s:11:"description";s:19:"Create a new table.";s:5:"flags";a:0:{}}s:19:"db_create_table_sql";a:6:{s:8:"filename";s:33:"sources/database/shared/mysql.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:10:"table_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The table name";s:11:"phpdoc_name";s:10:"table_name";}i:1;a:5:{s:4:"name";s:6:"fields";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:64:"A map of field names to Composr field types (with *#? encodings)";s:11:"phpdoc_name";s:6:"fields";}i:2;a:5:{s:4:"name";s:14:"raw_table_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:35:"The table name with no table prefix";s:11:"phpdoc_name";s:14:"raw_table_name";}i:3;a:7:{s:4:"name";s:10:"save_bytes";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:143:"Whether to use lower-byte table storage, with tradeoffs of not being able to support all unicode characters; use this if key length is an issue";s:11:"phpdoc_name";s:10:"save_bytes";}}s:4:"name";s:19:"db_create_table_sql";s:11:"description";s:26:"SQL to create a new table.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:3:"SQL";}}s:18:"db_string_equal_to";a:6:{s:8:"filename";s:33:"sources/database/shared/mysql.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:9:"attribute";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The attribute";s:11:"phpdoc_name";s:9:"attribute";}i:1;a:5:{s:4:"name";s:7:"compare";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The comparison";s:11:"phpdoc_name";s:7:"compare";}}s:4:"name";s:18:"db_string_equal_to";s:11:"description";s:83:"Encode an SQL statement fragment for a conditional to see if two strings are equal.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:7:"The SQL";}}s:22:"db_string_not_equal_to";a:6:{s:8:"filename";s:33:"sources/database/shared/mysql.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:9:"attribute";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The attribute";s:11:"phpdoc_name";s:9:"attribute";}i:1;a:5:{s:4:"name";s:7:"compare";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The comparison";s:11:"phpdoc_name";s:7:"compare";}}s:4:"name";s:22:"db_string_not_equal_to";s:11:"description";s:87:"Encode an SQL statement fragment for a conditional to see if two strings are not equal.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:7:"The SQL";}}s:26:"db_has_expression_ordering";a:6:{s:8:"filename";s:33:"sources/database/shared/mysql.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"A DB connection";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:26:"db_has_expression_ordering";s:11:"description";s:51:"Find whether expression ordering support is present";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:13:"Whether it is";}}s:16:"db_empty_is_null";a:6:{s:8:"filename";s:33:"sources/database/shared/mysql.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"db_empty_is_null";s:11:"description";s:173:"This function is internal to the database system, allowing SQL statements to be build up appropriately. Some databases require IS NULL to be used to check for blank strings.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether a blank string IS NULL";}}s:23:"db_drop_table_if_exists";a:5:{s:8:"filename";s:33:"sources/database/shared/mysql.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"table";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The table name";s:11:"phpdoc_name";s:5:"table";}i:1;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:30:"The DB connection to delete on";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:23:"db_drop_table_if_exists";s:11:"description";s:15:"Delete a table.";s:5:"flags";a:0:{}}s:22:"db_is_flat_file_simple";a:6:{s:8:"filename";s:33:"sources/database/shared/mysql.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"db_is_flat_file_simple";s:11:"description";s:117:"Determine whether the database is a flat file database, and thus not have a meaningful connect username and password.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:44:"Whether the database is a flat file database";}}s:14:"db_encode_like";a:6:{s:8:"filename";s:33:"sources/database/shared/mysql.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"pattern";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:11:"The pattern";s:11:"phpdoc_name";s:7:"pattern";}}s:4:"name";s:14:"db_encode_like";s:11:"description";s:136:"Encode a LIKE string comparision fragement for the database system. The pattern is a mixture of characters and ? and % wildcard symbols.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:19:"The encoded pattern";}}s:20:"db_close_connections";a:5:{s:8:"filename";s:33:"sources/database/shared/mysql.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"db_close_connections";s:11:"description";s:130:"Close the database connections. We don't really need to close them (will close at exit), just disassociate so we can refresh them.";s:5:"flags";a:0:{}}s:7:"db_cast";a:6:{s:8:"filename";s:33:"sources/database/shared/mysql.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:20:"The field identifier";s:11:"phpdoc_name";s:5:"field";}i:1;a:6:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:15:"The type wanted";s:11:"phpdoc_name";s:4:"type";s:3:"set";s:8:"CHAR INT";}}s:4:"name";s:7:"db_cast";s:11:"description";s:19:"Create an SQL cast.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:17:"The database type";}}}s:4:"name";s:20:"Database_super_mysql";s:7:"comment";b:1;}s:22:"Database_Static_sqlite";a:3:{s:9:"functions";a:19:{s:15:"db_default_user";a:6:{s:8:"filename";s:27:"sources/database/sqlite.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"db_default_user";s:11:"description";s:84:"Get the default user for making db connections (used by the installer as a default).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:35:"The default user for db connections";}}s:19:"db_default_password";a:6:{s:8:"filename";s:27:"sources/database/sqlite.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"db_default_password";s:11:"description";s:88:"Get the default password for making db connections (used by the installer as a default).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:39:"The default password for db connections";}}s:15:"db_create_index";a:5:{s:8:"filename";s:27:"sources/database/sqlite.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:10:"table_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:44:"The name of the table to create the index on";s:11:"phpdoc_name";s:10:"table_name";}i:1;a:5:{s:4:"name";s:10:"index_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:44:"The index name (not really important at all)";s:11:"phpdoc_name";s:10:"index_name";}i:2;a:5:{s:4:"name";s:7:"_fields";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:75:"Part of the SQL query: a comma-separated list of fields to use on the index";s:11:"phpdoc_name";s:7:"_fields";}i:3;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:28:"The DB connection to make on";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:15:"db_create_index";s:11:"description";s:21:"Create a table index.";s:5:"flags";a:0:{}}s:21:"db_change_primary_key";a:5:{s:8:"filename";s:27:"sources/database/sqlite.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:10:"table_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:44:"The name of the table to create the index on";s:11:"phpdoc_name";s:10:"table_name";}i:1;a:5:{s:4:"name";s:7:"new_key";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:38:"A list of fields to put in the new key";s:11:"phpdoc_name";s:7:"new_key";}i:2;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:28:"The DB connection to make on";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:21:"db_change_primary_key";s:11:"description";s:34:"Change the primary key of a table.";s:5:"flags";a:0:{}}s:15:"db_get_first_id";a:6:{s:8:"filename";s:27:"sources/database/sqlite.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"db_get_first_id";s:11:"description";s:102:"Get the ID of the first row in an auto-increment table (used whenever we need to reference the first).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:13:"First ID used";}}s:17:"db_get_type_remap";a:6:{s:8:"filename";s:27:"sources/database/sqlite.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"db_get_type_remap";s:11:"description";s:59:"Get a map of Composr field types, to actual database types.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:7:"The map";}}s:15:"db_create_table";a:5:{s:8:"filename";s:27:"sources/database/sqlite.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:10:"table_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The table name";s:11:"phpdoc_name";s:10:"table_name";}i:1;a:5:{s:4:"name";s:6:"fields";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:64:"A map of field names to Composr field types (with *#? encodings)";s:11:"phpdoc_name";s:6:"fields";}i:2;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:28:"The DB connection to make on";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:15:"db_create_table";s:11:"description";s:19:"Create a new table.";s:5:"flags";a:0:{}}s:18:"db_string_equal_to";a:6:{s:8:"filename";s:27:"sources/database/sqlite.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:9:"attribute";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The attribute";s:11:"phpdoc_name";s:9:"attribute";}i:1;a:5:{s:4:"name";s:7:"compare";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The comparison";s:11:"phpdoc_name";s:7:"compare";}}s:4:"name";s:18:"db_string_equal_to";s:11:"description";s:83:"Encode an SQL statement fragment for a conditional to see if two strings are equal.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:7:"The SQL";}}s:22:"db_string_not_equal_to";a:6:{s:8:"filename";s:27:"sources/database/sqlite.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:9:"attribute";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The attribute";s:11:"phpdoc_name";s:9:"attribute";}i:1;a:5:{s:4:"name";s:7:"compare";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The comparison";s:11:"phpdoc_name";s:7:"compare";}}s:4:"name";s:22:"db_string_not_equal_to";s:11:"description";s:87:"Encode an SQL statement fragment for a conditional to see if two strings are not equal.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:7:"The SQL";}}s:16:"db_empty_is_null";a:6:{s:8:"filename";s:27:"sources/database/sqlite.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"db_empty_is_null";s:11:"description";s:173:"This function is internal to the database system, allowing SQL statements to be build up appropriately. Some databases require IS NULL to be used to check for blank strings.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether a blank string IS NULL";}}s:23:"db_drop_table_if_exists";a:5:{s:8:"filename";s:27:"sources/database/sqlite.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"table";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The table name";s:11:"phpdoc_name";s:5:"table";}i:1;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:30:"The DB connection to delete on";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:23:"db_drop_table_if_exists";s:11:"description";s:15:"Delete a table.";s:5:"flags";a:0:{}}s:22:"db_is_flat_file_simple";a:6:{s:8:"filename";s:27:"sources/database/sqlite.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"db_is_flat_file_simple";s:11:"description";s:117:"Determine whether the database is a flat file database, and thus not have a meaningful connect username and password.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:44:"Whether the database is a flat file database";}}s:14:"db_encode_like";a:6:{s:8:"filename";s:27:"sources/database/sqlite.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"pattern";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:11:"The pattern";s:11:"phpdoc_name";s:7:"pattern";}}s:4:"name";s:14:"db_encode_like";s:11:"description";s:136:"Encode a LIKE string comparision fragement for the database system. The pattern is a mixture of characters and ? and % wildcard symbols.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:19:"The encoded pattern";}}s:20:"db_close_connections";a:5:{s:8:"filename";s:27:"sources/database/sqlite.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"db_close_connections";s:11:"description";s:130:"Close the database connections. We don't really need to close them (will close at exit), just disassociate so we can refresh them.";s:5:"flags";a:0:{}}s:17:"db_get_connection";a:6:{s:8:"filename";s:27:"sources/database/sqlite.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:10:"persistent";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:41:"Whether to create a persistent connection";s:11:"phpdoc_name";s:10:"persistent";}i:1;a:5:{s:4:"name";s:7:"db_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:17:"The database name";s:11:"phpdoc_name";s:7:"db_name";}i:2;a:5:{s:4:"name";s:7:"db_host";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:30:"The database host (the server)";s:11:"phpdoc_name";s:7:"db_host";}i:3;a:5:{s:4:"name";s:7:"db_user";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:32:"The database connection username";s:11:"phpdoc_name";s:7:"db_user";}i:4;a:5:{s:4:"name";s:11:"db_password";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:32:"The database connection password";s:11:"phpdoc_name";s:11:"db_password";}i:5;a:7:{s:4:"name";s:7:"fail_ok";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:93:"Whether to on error echo an error and return with a null, rather than giving a critical error";s:11:"phpdoc_name";s:7:"fail_ok";}}s:4:"name";s:17:"db_get_connection";s:11:"description";s:128:"Get a database connection. This function shouldn't be used by you, as a connection to the database is established automatically.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:36:"A database connection (null: failed)";}}s:16:"db_has_full_text";a:6:{s:8:"filename";s:27:"sources/database/sqlite.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"A DB connection";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:16:"db_has_full_text";s:11:"description";s:40:"Find whether full-text-search is present";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:13:"Whether it is";}}s:16:"db_escape_string";a:6:{s:8:"filename";s:27:"sources/database/sqlite.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:10:"The string";s:11:"phpdoc_name";s:6:"string";}}s:4:"name";s:16:"db_escape_string";s:11:"description";s:234:"Escape a string so it may be inserted into a query. If SQL statements are being built up and passed using db_query then it is essential that this is used for security reasons. Otherwise, the abstraction layer deals with the situation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:18:"The escaped string";}}s:8:"db_query";a:6:{s:8:"filename";s:27:"sources/database/sqlite.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:5:"query";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:22:"The complete SQL query";s:11:"phpdoc_name";s:5:"query";}i:1;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"A DB connection";s:11:"phpdoc_name";s:2:"db";}i:2;a:7:{s:4:"name";s:3:"max";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"The maximum number of rows to affect (null: no limit)";s:11:"phpdoc_name";s:3:"max";}i:3;a:7:{s:4:"name";s:5:"start";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:48:"The start row to affect (null: no specification)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:7:"fail_ok";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:37:"Whether to output an error on failure";s:11:"phpdoc_name";s:7:"fail_ok";}i:5;a:7:{s:4:"name";s:13:"get_insert_id";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:63:"Whether to get the autoincrement ID created for an insert query";s:11:"phpdoc_name";s:13:"get_insert_id";}}s:4:"name";s:8:"db_query";s:11:"description";s:126:"This function is a very basic query executor. It shouldn't usually be used by you, as there are abstracted versions available.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:48:"The results (null: no results), or the insert ID";}}s:17:"db_get_query_rows";a:6:{s:8:"filename";s:27:"sources/database/sqlite.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:7:"results";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:24:"The query result pointer";s:11:"phpdoc_name";s:7:"results";}i:1;a:7:{s:4:"name";s:5:"start";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:70:"Whether to start reading from (null: irrelevant for this forum driver)";s:11:"phpdoc_name";s:5:"start";}}s:4:"name";s:17:"db_get_query_rows";s:11:"description";s:42:"Get the rows returned from a SELECT query.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:18:"A list of row maps";}}}s:4:"name";s:22:"Database_Static_sqlite";s:7:"comment";b:1;}s:25:"Database_Static_sqlserver";a:3:{s:9:"functions";a:21:{s:15:"db_default_user";a:6:{s:8:"filename";s:30:"sources/database/sqlserver.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"db_default_user";s:11:"description";s:84:"Get the default user for making db connections (used by the installer as a default).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:35:"The default user for db connections";}}s:19:"db_default_password";a:6:{s:8:"filename";s:30:"sources/database/sqlserver.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"db_default_password";s:11:"description";s:88:"Get the default password for making db connections (used by the installer as a default).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:39:"The default password for db connections";}}s:15:"db_create_index";a:5:{s:8:"filename";s:30:"sources/database/sqlserver.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:10:"table_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:44:"The name of the table to create the index on";s:11:"phpdoc_name";s:10:"table_name";}i:1;a:5:{s:4:"name";s:10:"index_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:44:"The index name (not really important at all)";s:11:"phpdoc_name";s:10:"index_name";}i:2;a:5:{s:4:"name";s:7:"_fields";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:75:"Part of the SQL query: a comma-separated list of fields to use on the index";s:11:"phpdoc_name";s:7:"_fields";}i:3;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:28:"The DB connection to make on";s:11:"phpdoc_name";s:2:"db";}i:4;a:7:{s:4:"name";s:16:"unique_key_field";s:7:"default";s:2:"id";s:11:"default_raw";s:4:"'id'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:46:"The name of the unique key field for the table";s:11:"phpdoc_name";s:16:"unique_key_field";}}s:4:"name";s:15:"db_create_index";s:11:"description";s:21:"Create a table index.";s:5:"flags";a:0:{}}s:21:"db_change_primary_key";a:5:{s:8:"filename";s:30:"sources/database/sqlserver.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:10:"table_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:44:"The name of the table to create the index on";s:11:"phpdoc_name";s:10:"table_name";}i:1;a:5:{s:4:"name";s:7:"new_key";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:38:"A list of fields to put in the new key";s:11:"phpdoc_name";s:7:"new_key";}i:2;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:28:"The DB connection to make on";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:21:"db_change_primary_key";s:11:"description";s:34:"Change the primary key of a table.";s:5:"flags";a:0:{}}s:21:"db_full_text_assemble";a:6:{s:8:"filename";s:30:"sources/database/sqlserver.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:7:"content";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:56:"Our match string (assumes "?" has been stripped already)";s:11:"phpdoc_name";s:7:"content";}i:1;a:5:{s:4:"name";s:7:"boolean";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:40:"Whether to do a boolean full text search";s:11:"phpdoc_name";s:7:"boolean";}}s:4:"name";s:21:"db_full_text_assemble";s:11:"description";s:58:"Assemble part of a WHERE clause for doing full-text search";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:49:"Part of a WHERE clause for doing full-text search";}}s:15:"db_get_first_id";a:6:{s:8:"filename";s:30:"sources/database/sqlserver.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"db_get_first_id";s:11:"description";s:102:"Get the ID of the first row in an auto-increment table (used whenever we need to reference the first).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:13:"First ID used";}}s:17:"db_get_type_remap";a:6:{s:8:"filename";s:30:"sources/database/sqlserver.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"db_get_type_remap";s:11:"description";s:59:"Get a map of Composr field types, to actual database types.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:7:"The map";}}s:20:"db_close_connections";a:5:{s:8:"filename";s:30:"sources/database/sqlserver.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"db_close_connections";s:11:"description";s:130:"Close the database connections. We don't really need to close them (will close at exit), just disassociate so we can refresh them.";s:5:"flags";a:0:{}}s:15:"db_create_table";a:5:{s:8:"filename";s:30:"sources/database/sqlserver.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:10:"table_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The table name";s:11:"phpdoc_name";s:10:"table_name";}i:1;a:5:{s:4:"name";s:6:"fields";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:64:"A map of field names to Composr field types (with *#? encodings)";s:11:"phpdoc_name";s:6:"fields";}i:2;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:28:"The DB connection to make on";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:15:"db_create_table";s:11:"description";s:19:"Create a new table.";s:5:"flags";a:0:{}}s:18:"db_string_equal_to";a:6:{s:8:"filename";s:30:"sources/database/sqlserver.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:9:"attribute";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The attribute";s:11:"phpdoc_name";s:9:"attribute";}i:1;a:5:{s:4:"name";s:7:"compare";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The comparison";s:11:"phpdoc_name";s:7:"compare";}}s:4:"name";s:18:"db_string_equal_to";s:11:"description";s:83:"Encode an SQL statement fragment for a conditional to see if two strings are equal.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:7:"The SQL";}}s:22:"db_string_not_equal_to";a:6:{s:8:"filename";s:30:"sources/database/sqlserver.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:9:"attribute";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The attribute";s:11:"phpdoc_name";s:9:"attribute";}i:1;a:5:{s:4:"name";s:7:"compare";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The comparison";s:11:"phpdoc_name";s:7:"compare";}}s:4:"name";s:22:"db_string_not_equal_to";s:11:"description";s:87:"Encode an SQL statement fragment for a conditional to see if two strings are not equal.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:7:"The SQL";}}s:16:"db_empty_is_null";a:6:{s:8:"filename";s:30:"sources/database/sqlserver.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"db_empty_is_null";s:11:"description";s:173:"This function is internal to the database system, allowing SQL statements to be build up appropriately. Some databases require IS NULL to be used to check for blank strings.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether a blank string IS NULL";}}s:23:"db_drop_table_if_exists";a:5:{s:8:"filename";s:30:"sources/database/sqlserver.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"table";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The table name";s:11:"phpdoc_name";s:5:"table";}i:1;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:30:"The DB connection to delete on";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:23:"db_drop_table_if_exists";s:11:"description";s:15:"Delete a table.";s:5:"flags";a:0:{}}s:22:"db_is_flat_file_simple";a:6:{s:8:"filename";s:30:"sources/database/sqlserver.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"db_is_flat_file_simple";s:11:"description";s:117:"Determine whether the database is a flat file database, and thus not have a meaningful connect username and password.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:44:"Whether the database is a flat file database";}}s:14:"db_encode_like";a:6:{s:8:"filename";s:30:"sources/database/sqlserver.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"pattern";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:11:"The pattern";s:11:"phpdoc_name";s:7:"pattern";}}s:4:"name";s:14:"db_encode_like";s:11:"description";s:136:"Encode a LIKE string comparision fragement for the database system. The pattern is a mixture of characters and ? and % wildcard symbols.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:19:"The encoded pattern";}}s:17:"db_get_connection";a:6:{s:8:"filename";s:30:"sources/database/sqlserver.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:10:"persistent";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:41:"Whether to create a persistent connection";s:11:"phpdoc_name";s:10:"persistent";}i:1;a:5:{s:4:"name";s:7:"db_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:17:"The database name";s:11:"phpdoc_name";s:7:"db_name";}i:2;a:5:{s:4:"name";s:7:"db_host";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:30:"The database host (the server)";s:11:"phpdoc_name";s:7:"db_host";}i:3;a:5:{s:4:"name";s:7:"db_user";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:32:"The database connection username";s:11:"phpdoc_name";s:7:"db_user";}i:4;a:5:{s:4:"name";s:11:"db_password";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:32:"The database connection password";s:11:"phpdoc_name";s:11:"db_password";}i:5;a:7:{s:4:"name";s:7:"fail_ok";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:93:"Whether to on error echo an error and return with a null, rather than giving a critical error";s:11:"phpdoc_name";s:7:"fail_ok";}}s:4:"name";s:17:"db_get_connection";s:11:"description";s:128:"Get a database connection. This function shouldn't be used by you, as a connection to the database is established automatically.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:36:"A database connection (null: failed)";}}s:16:"db_has_full_text";a:6:{s:8:"filename";s:30:"sources/database/sqlserver.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"A DB connection";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:16:"db_has_full_text";s:11:"description";s:40:"Find whether full-text-search is present";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:13:"Whether it is";}}s:24:"db_has_full_text_boolean";a:6:{s:8:"filename";s:30:"sources/database/sqlserver.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"db_has_full_text_boolean";s:11:"description";s:48:"Find whether full-text-boolean-search is present";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:13:"Whether it is";}}s:16:"db_escape_string";a:6:{s:8:"filename";s:30:"sources/database/sqlserver.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:10:"The string";s:11:"phpdoc_name";s:6:"string";}}s:4:"name";s:16:"db_escape_string";s:11:"description";s:234:"Escape a string so it may be inserted into a query. If SQL statements are being built up and passed using db_query then it is essential that this is used for security reasons. Otherwise, the abstraction layer deals with the situation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:18:"The escaped string";}}s:8:"db_query";a:6:{s:8:"filename";s:30:"sources/database/sqlserver.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:5:"query";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:22:"The complete SQL query";s:11:"phpdoc_name";s:5:"query";}i:1;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"A DB connection";s:11:"phpdoc_name";s:2:"db";}i:2;a:7:{s:4:"name";s:3:"max";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"The maximum number of rows to affect (null: no limit)";s:11:"phpdoc_name";s:3:"max";}i:3;a:7:{s:4:"name";s:5:"start";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:48:"The start row to affect (null: no specification)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:7:"fail_ok";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:37:"Whether to output an error on failure";s:11:"phpdoc_name";s:7:"fail_ok";}i:5;a:7:{s:4:"name";s:13:"get_insert_id";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:63:"Whether to get the autoincrement ID created for an insert query";s:11:"phpdoc_name";s:13:"get_insert_id";}}s:4:"name";s:8:"db_query";s:11:"description";s:126:"This function is a very basic query executor. It shouldn't usually be used by you, as there are abstracted versions available.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:48:"The results (null: no results), or the insert ID";}}s:17:"db_get_query_rows";a:6:{s:8:"filename";s:30:"sources/database/sqlserver.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:7:"results";s:3:"ref";b:0;s:4:"type";s:8:"resource";s:11:"description";s:24:"The query result pointer";s:11:"phpdoc_name";s:7:"results";}i:1;a:7:{s:4:"name";s:5:"start";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:70:"Whether to start reading from (null: irrelevant for this forum driver)";s:11:"phpdoc_name";s:5:"start";}}s:4:"name";s:17:"db_get_query_rows";s:11:"description";s:42:"Get the rows returned from a SELECT query.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:18:"A list of row maps";}}}s:4:"name";s:25:"Database_Static_sqlserver";s:7:"comment";b:1;}s:19:"Database_Static_xml";a:3:{s:9:"functions";a:57:{s:21:"can_arbitrary_groupby";a:6:{s:8:"filename";s:24:"sources/database/xml.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"can_arbitrary_groupby";s:11:"description";s:148:"Find whether the database may run GROUP BY unfettered with restrictions on the SELECT'd fields having to be represented in it or aggregate functions";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Whether it can";}}s:15:"db_default_user";a:6:{s:8:"filename";s:24:"sources/database/xml.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"db_default_user";s:11:"description";s:84:"Get the default user for making db connections (used by the installer as a default).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:35:"The default user for db connections";}}s:19:"db_default_password";a:6:{s:8:"filename";s:24:"sources/database/xml.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"db_default_password";s:11:"description";s:88:"Get the default password for making db connections (used by the installer as a default).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:39:"The default password for db connections";}}s:17:"db_has_subqueries";a:6:{s:8:"filename";s:24:"sources/database/xml.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"A DB connection";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:17:"db_has_subqueries";s:11:"description";s:40:"Find whether subquery support is present";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:13:"Whether it is";}}s:17:"db_get_type_remap";a:6:{s:8:"filename";s:24:"sources/database/xml.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"db_get_type_remap";s:11:"description";s:59:"Get a map of Composr field types, to actual database types.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:7:"The map";}}s:15:"db_create_index";a:5:{s:8:"filename";s:24:"sources/database/xml.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:10:"table_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:44:"The name of the table to create the index on";s:11:"phpdoc_name";s:10:"table_name";}i:1;a:5:{s:4:"name";s:10:"index_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:44:"The index name (not really important at all)";s:11:"phpdoc_name";s:10:"index_name";}i:2;a:5:{s:4:"name";s:7:"_fields";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:75:"Part of the SQL query: a comma-separated list of fields to use on the index";s:11:"phpdoc_name";s:7:"_fields";}i:3;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:28:"The DB connection to make on";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:15:"db_create_index";s:11:"description";s:21:"Create a table index.";s:5:"flags";a:0:{}}s:21:"db_change_primary_key";a:5:{s:8:"filename";s:24:"sources/database/xml.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:10:"table_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:44:"The name of the table to create the index on";s:11:"phpdoc_name";s:10:"table_name";}i:1;a:5:{s:4:"name";s:7:"new_key";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:38:"A list of fields to put in the new key";s:11:"phpdoc_name";s:7:"new_key";}i:2;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:28:"The DB connection to make on";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:21:"db_change_primary_key";s:11:"description";s:34:"Change the primary key of a table.";s:5:"flags";a:0:{}}s:15:"db_get_first_id";a:6:{s:8:"filename";s:24:"sources/database/xml.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"db_get_first_id";s:11:"description";s:102:"Get the ID of the first row in an auto-increment table (used whenever we need to reference the first).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:13:"First ID used";}}s:15:"db_create_table";a:5:{s:8:"filename";s:24:"sources/database/xml.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:10:"table_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The table name";s:11:"phpdoc_name";s:10:"table_name";}i:1;a:5:{s:4:"name";s:6:"fields";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:64:"A map of field names to Composr field types (with *#? encodings)";s:11:"phpdoc_name";s:6:"fields";}i:2;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:28:"The DB connection to make on";s:11:"phpdoc_name";s:2:"db";}i:3;a:7:{s:4:"name";s:13:"if_not_exists";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:52:"Whether to only do it if it does not currently exist";s:11:"phpdoc_name";s:13:"if_not_exists";}}s:4:"name";s:15:"db_create_table";s:11:"description";s:19:"Create a new table.";s:5:"flags";a:0:{}}s:18:"db_string_equal_to";a:6:{s:8:"filename";s:24:"sources/database/xml.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:9:"attribute";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The attribute";s:11:"phpdoc_name";s:9:"attribute";}i:1;a:5:{s:4:"name";s:7:"compare";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The comparison";s:11:"phpdoc_name";s:7:"compare";}}s:4:"name";s:18:"db_string_equal_to";s:11:"description";s:83:"Encode an SQL statement fragment for a conditional to see if two strings are equal.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:7:"The SQL";}}s:22:"db_string_not_equal_to";a:6:{s:8:"filename";s:24:"sources/database/xml.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:9:"attribute";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The attribute";s:11:"phpdoc_name";s:9:"attribute";}i:1;a:5:{s:4:"name";s:7:"compare";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The comparison";s:11:"phpdoc_name";s:7:"compare";}}s:4:"name";s:22:"db_string_not_equal_to";s:11:"description";s:87:"Encode an SQL statement fragment for a conditional to see if two strings are not equal.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:7:"The SQL";}}s:16:"db_empty_is_null";a:6:{s:8:"filename";s:24:"sources/database/xml.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"db_empty_is_null";s:11:"description";s:173:"This function is internal to the database system, allowing SQL statements to be build up appropriately. Some databases require IS NULL to be used to check for blank strings.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether a blank string IS NULL";}}s:23:"db_drop_table_if_exists";a:5:{s:8:"filename";s:24:"sources/database/xml.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:10:"table_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The table name";s:11:"phpdoc_name";s:10:"table_name";}i:1;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:30:"The DB connection to delete on";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:23:"db_drop_table_if_exists";s:11:"description";s:15:"Delete a table.";s:5:"flags";a:0:{}}s:22:"db_is_flat_file_simple";a:6:{s:8:"filename";s:24:"sources/database/xml.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"db_is_flat_file_simple";s:11:"description";s:117:"Determine whether the database is a flat file database, and thus not have a meaningful connect username and password.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:44:"Whether the database is a flat file database";}}s:14:"db_encode_like";a:6:{s:8:"filename";s:24:"sources/database/xml.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"pattern";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:11:"The pattern";s:11:"phpdoc_name";s:7:"pattern";}}s:4:"name";s:14:"db_encode_like";s:11:"description";s:136:"Encode a LIKE string comparision fragement for the database system. The pattern is a mixture of characters and ? and % wildcard symbols.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:19:"The encoded pattern";}}s:20:"db_close_connections";a:5:{s:8:"filename";s:24:"sources/database/xml.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"db_close_connections";s:11:"description";s:130:"Close the database connections. We don't really need to close them (will close at exit), just disassociate so we can refresh them.";s:5:"flags";a:0:{}}s:17:"db_get_connection";a:6:{s:8:"filename";s:24:"sources/database/xml.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:10:"persistent";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:41:"Whether to create a persistent connection";s:11:"phpdoc_name";s:10:"persistent";}i:1;a:5:{s:4:"name";s:7:"db_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:17:"The database name";s:11:"phpdoc_name";s:7:"db_name";}i:2;a:5:{s:4:"name";s:7:"db_host";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:30:"The database host (the server)";s:11:"phpdoc_name";s:7:"db_host";}i:3;a:5:{s:4:"name";s:7:"db_user";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:32:"The database connection username";s:11:"phpdoc_name";s:7:"db_user";}i:4;a:5:{s:4:"name";s:11:"db_password";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:32:"The database connection password";s:11:"phpdoc_name";s:11:"db_password";}i:5;a:7:{s:4:"name";s:7:"fail_ok";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:93:"Whether to on error echo an error and return with a null, rather than giving a critical error";s:11:"phpdoc_name";s:7:"fail_ok";}}s:4:"name";s:17:"db_get_connection";s:11:"description";s:128:"Get a database connection. This function shouldn't be used by you, as a connection to the database is established automatically.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:36:"A database connection (null: failed)";}}s:16:"db_has_full_text";a:6:{s:8:"filename";s:24:"sources/database/xml.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"A DB connection";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:16:"db_has_full_text";s:11:"description";s:40:"Find whether full-text-search is present";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:13:"Whether it is";}}s:21:"db_full_text_assemble";a:6:{s:8:"filename";s:24:"sources/database/xml.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:7:"content";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:56:"Our match string (assumes "?" has been stripped already)";s:11:"phpdoc_name";s:7:"content";}i:1;a:5:{s:4:"name";s:7:"boolean";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:40:"Whether to do a boolean full text search";s:11:"phpdoc_name";s:7:"boolean";}}s:4:"name";s:21:"db_full_text_assemble";s:11:"description";s:58:"Assemble part of a WHERE clause for doing full-text search";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:49:"Part of a WHERE clause for doing full-text search";}}s:24:"db_has_full_text_boolean";a:6:{s:8:"filename";s:24:"sources/database/xml.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"db_has_full_text_boolean";s:11:"description";s:48:"Find whether full-text-boolean-search is present";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:13:"Whether it is";}}s:16:"db_escape_string";a:6:{s:8:"filename";s:24:"sources/database/xml.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:10:"The string";s:11:"phpdoc_name";s:6:"string";}}s:4:"name";s:16:"db_escape_string";s:11:"description";s:234:"Escape a string so it may be inserted into a query. If SQL statements are being built up and passed using db_query then it is essential that this is used for security reasons. Otherwise, the abstraction layer deals with the situation.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:18:"The escaped string";}}s:8:"db_query";a:6:{s:8:"filename";s:24:"sources/database/xml.php";s:10:"parameters";a:8:{i:0;a:5:{s:4:"name";s:5:"query";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:22:"The complete SQL query";s:11:"phpdoc_name";s:5:"query";}i:1;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"A DB connection";s:11:"phpdoc_name";s:2:"db";}i:2;a:7:{s:4:"name";s:3:"max";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"The maximum number of rows to affect (null: no limit)";s:11:"phpdoc_name";s:3:"max";}i:3;a:7:{s:4:"name";s:5:"start";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:48:"The start row to affect (null: no specification)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:7:"fail_ok";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:124:"Whether to not output an error on some kind of run-time failure (parse errors and clear programming errors are always fatal)";s:11:"phpdoc_name";s:7:"fail_ok";}i:5;a:7:{s:4:"name";s:13:"get_insert_id";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:63:"Whether to get the autoincrement ID created for an insert query";s:11:"phpdoc_name";s:13:"get_insert_id";}i:6;a:7:{s:4:"name";s:12:"no_syndicate";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:174:"Whether to force the query to execute on the XML database driver (won't optimise by using MySQL). Useful for calls happening for multi-part queries from within this DB driver";s:11:"phpdoc_name";s:12:"no_syndicate";}i:7;a:7:{s:4:"name";s:16:"save_as_volatile";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:52:"Whether we are saving as a 'volatile' file extension";s:11:"phpdoc_name";s:16:"save_as_volatile";}}s:4:"name";s:8:"db_query";s:11:"description";s:126:"This function is a very basic query executor. It shouldn't usually be used by you, as there are abstracted versions available.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:48:"The results (null: no results), or the insert ID";}}s:21:"is_start_of_delimiter";a:6:{s:8:"filename";s:24:"sources/database/xml.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"looking";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:8:"The item";s:11:"phpdoc_name";s:7:"looking";}}s:4:"name";s:21:"is_start_of_delimiter";s:11:"description";s:63:"See if an item is a prefix to something in the delimiter array.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:13:"Whether it is";}}s:12:"_read_schema";a:6:{s:8:"filename";s:24:"sources/database/xml.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:12:"The database";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:10:"table_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The table name";s:11:"phpdoc_name";s:10:"table_name";}i:2;a:7:{s:4:"name";s:7:"fail_ok";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:124:"Whether to not output an error on some kind of run-time failure (parse errors and clear programming errors are always fatal)";s:11:"phpdoc_name";s:7:"fail_ok";}}s:4:"name";s:12:"_read_schema";s:11:"description";s:28:"Find the schema for a table.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:32:"The schema map (null: not found)";}}s:11:"_type_check";a:5:{s:8:"filename";s:24:"sources/database/xml.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:6:"schema";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:10:"The schema";s:11:"phpdoc_name";s:6:"schema";}i:1;a:5:{s:4:"name";s:6:"record";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:8:"The data";s:11:"phpdoc_name";s:6:"record";}i:2;a:5:{s:4:"name";s:5:"query";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"Query that was executed";s:11:"phpdoc_name";s:5:"query";}}s:4:"name";s:11:"_type_check";s:11:"description";s:49:"Type check some data destined to go into a table.";s:5:"flags";a:0:{}}s:17:"_read_all_records";a:6:{s:8:"filename";s:24:"sources/database/xml.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:19:"Database connection";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:10:"table_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The table name";s:11:"phpdoc_name";s:10:"table_name";}i:2;a:5:{s:4:"name";s:8:"table_as";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:46:"What the table will be renamed to (blank: N/A)";s:11:"phpdoc_name";s:8:"table_as";}i:3;a:5:{s:4:"name";s:6:"schema";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:57:"Schema to type-set against (null: do not do type-setting)";s:11:"phpdoc_name";s:6:"schema";}i:4;a:5:{s:4:"name";s:10:"where_expr";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:123:"Expression filtering results (used for optimisation, seeing if we can get a quick key match) (null: no data to filter with)";s:11:"phpdoc_name";s:10:"where_expr";}i:5;a:5:{s:4:"name";s:8:"bindings";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:41:"Bindings available in the execution scope";s:11:"phpdoc_name";s:8:"bindings";}i:6;a:5:{s:4:"name";s:7:"fail_ok";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:124:"Whether to not output an error on some kind of run-time failure (parse errors and clear programming errors are always fatal)";s:11:"phpdoc_name";s:7:"fail_ok";}i:7;a:5:{s:4:"name";s:5:"query";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"Query that was executed";s:11:"phpdoc_name";s:5:"query";}i:8;a:7:{s:4:"name";s:21:"include_unused_fields";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:86:"Whether to include fields that are present in the actual records but not in our schema";s:11:"phpdoc_name";s:21:"include_unused_fields";}}s:4:"name";s:17:"_read_all_records";s:11:"description";s:37:"Read in all the records from a table.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:35:"The collected records (null: error)";}}s:23:"_turn_where_expr_to_map";a:6:{s:8:"filename";s:24:"sources/database/xml.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:10:"where_expr";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:25:"The expression parse tree";s:11:"phpdoc_name";s:10:"where_expr";}i:1;a:5:{s:4:"name";s:8:"table_as";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:46:"What the table will be renamed to (blank: N/A)";s:11:"phpdoc_name";s:8:"table_as";}i:2;a:7:{s:4:"name";s:6:"schema";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:57:"Schema to type-set against (null: do not do type-setting)";s:11:"phpdoc_name";s:6:"schema";}i:3;a:7:{s:4:"name";s:17:"not_full_accuracy";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:40:"Whether to do a not-full-accurate search";s:11:"phpdoc_name";s:17:"not_full_accuracy";}}s:4:"name";s:23:"_turn_where_expr_to_map";s:11:"description";s:108:"Take an expression and do our best to collapse it into a fixed mapping of stuff we know we are going to AND.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:7:"AND map";}}s:12:"_read_record";a:6:{s:8:"filename";s:24:"sources/database/xml.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:13:"The file path";s:11:"phpdoc_name";s:4:"path";}i:1;a:7:{s:4:"name";s:6:"schema";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:57:"Schema to type-set against (null: do not do type-setting)";s:11:"phpdoc_name";s:6:"schema";}i:2;a:7:{s:4:"name";s:20:"must_contain_strings";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:63:"Substrings to check it is in, used for performance (null: none)";s:11:"phpdoc_name";s:20:"must_contain_strings";}i:3;a:7:{s:4:"name";s:21:"include_unused_fields";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:86:"Whether to include fields that are present in the actual records but not in our schema";s:11:"phpdoc_name";s:21:"include_unused_fields";}i:4;a:7:{s:4:"name";s:7:"fail_ok";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:124:"Whether to not output an error on some kind of run-time failure (parse errors and clear programming errors are always fatal)";s:11:"phpdoc_name";s:7:"fail_ok";}}s:4:"name";s:12:"_read_record";s:11:"description";s:31:"Read a record from an XML file.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:68:"The record map (null: does not contain requested substrings / error)";}}s:14:"_write_records";a:5:{s:8:"filename";s:24:"sources/database/xml.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:19:"Database connection";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:10:"table_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The table name";s:11:"phpdoc_name";s:10:"table_name";}i:2;a:5:{s:4:"name";s:7:"records";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:23:"The list of record maps";s:11:"phpdoc_name";s:7:"records";}i:3;a:7:{s:4:"name";s:7:"fail_ok";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:124:"Whether to not output an error on some kind of run-time failure (parse errors and clear programming errors are always fatal)";s:11:"phpdoc_name";s:7:"fail_ok";}}s:4:"name";s:14:"_write_records";s:11:"description";s:36:"Write in all the records to a table.";s:5:"flags";a:0:{}}s:13:"_write_record";a:5:{s:8:"filename";s:24:"sources/database/xml.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:19:"Database connection";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:10:"table_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The table name";s:11:"phpdoc_name";s:10:"table_name";}i:2;a:5:{s:4:"name";s:4:"guid";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:8:"The GUID";s:11:"phpdoc_name";s:4:"guid";}i:3;a:5:{s:4:"name";s:6:"record";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:14:"The record map";s:11:"phpdoc_name";s:6:"record";}i:4;a:7:{s:4:"name";s:7:"fail_ok";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:124:"Whether to not output an error on some kind of run-time failure (parse errors and clear programming errors are always fatal)";s:11:"phpdoc_name";s:7:"fail_ok";}i:5;a:7:{s:4:"name";s:16:"save_as_volatile";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:52:"Whether we are saving as a 'volatile' file extension";s:11:"phpdoc_name";s:16:"save_as_volatile";}}s:4:"name";s:13:"_write_record";s:11:"description";s:30:"Write a record to an XML file.";s:5:"flags";a:0:{}}s:14:"_delete_record";a:5:{s:8:"filename";s:24:"sources/database/xml.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:13:"The file path";s:11:"phpdoc_name";s:4:"path";}i:1;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:19:"Database connection";s:11:"phpdoc_name";s:2:"db";}}s:4:"name";s:14:"_delete_record";s:11:"description";s:30:"Write a record to an XML file.";s:5:"flags";a:0:{}}s:19:"_key_conflict_check";a:6:{s:8:"filename";s:24:"sources/database/xml.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:19:"Database connection";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:10:"table_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The table name";s:11:"phpdoc_name";s:10:"table_name";}i:2;a:5:{s:4:"name";s:6:"schema";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:10:"The schema";s:11:"phpdoc_name";s:6:"schema";}i:3;a:5:{s:4:"name";s:6:"record";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:10:"The record";s:11:"phpdoc_name";s:6:"record";}i:4;a:5:{s:4:"name";s:5:"query";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"Query that was executed";s:11:"phpdoc_name";s:5:"query";}i:5;a:5:{s:4:"name";s:7:"fail_ok";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:124:"Whether to not output an error on some kind of run-time failure (parse errors and clear programming errors are always fatal)";s:11:"phpdoc_name";s:7:"fail_ok";}i:6;a:7:{s:4:"name";s:17:"existing_identity";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:111:"The GUID representing what we have now (so we don't think we're conflicting with ourself) (null: not yet added)";s:11:"phpdoc_name";s:17:"existing_identity";}}s:4:"name";s:19:"_key_conflict_check";s:11:"description";s:48:"Check to see if there is a key conflict problem.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:28:"Whether there was a conflict";}}s:14:"_do_query_drop";a:6:{s:8:"filename";s:24:"sources/database/xml.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:6:"tokens";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:6:"Tokens";s:11:"phpdoc_name";s:6:"tokens";}i:1;a:5:{s:4:"name";s:5:"query";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"Query that was executed";s:11:"phpdoc_name";s:5:"query";}i:2;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:19:"Database connection";s:11:"phpdoc_name";s:2:"db";}i:3;a:5:{s:4:"name";s:7:"fail_ok";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:124:"Whether to not output an error on some kind of run-time failure (parse errors and clear programming errors are always fatal)";s:11:"phpdoc_name";s:7:"fail_ok";}}s:4:"name";s:14:"_do_query_drop";s:11:"description";s:21:"Execute a DROP query.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:30:"The results (null: no results)";}}s:15:"_do_query_alter";a:6:{s:8:"filename";s:24:"sources/database/xml.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:6:"tokens";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:6:"Tokens";s:11:"phpdoc_name";s:6:"tokens";}i:1;a:5:{s:4:"name";s:5:"query";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"Query that was executed";s:11:"phpdoc_name";s:5:"query";}i:2;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:19:"Database connection";s:11:"phpdoc_name";s:2:"db";}i:3;a:5:{s:4:"name";s:7:"fail_ok";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:124:"Whether to not output an error on some kind of run-time failure (parse errors and clear programming errors are always fatal)";s:11:"phpdoc_name";s:7:"fail_ok";}}s:4:"name";s:15:"_do_query_alter";s:11:"description";s:23:"Execute an ALTER query.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:30:"The results (null: no results)";}}s:16:"_do_query_create";a:6:{s:8:"filename";s:24:"sources/database/xml.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:6:"tokens";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:6:"Tokens";s:11:"phpdoc_name";s:6:"tokens";}i:1;a:5:{s:4:"name";s:5:"query";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"Query that was executed";s:11:"phpdoc_name";s:5:"query";}i:2;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:19:"Database connection";s:11:"phpdoc_name";s:2:"db";}i:3;a:5:{s:4:"name";s:7:"fail_ok";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:124:"Whether to not output an error on some kind of run-time failure (parse errors and clear programming errors are always fatal)";s:11:"phpdoc_name";s:7:"fail_ok";}}s:4:"name";s:16:"_do_query_create";s:11:"description";s:23:"Execute a CREATE query.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:30:"The results (null: no results)";}}s:16:"_do_query_insert";a:6:{s:8:"filename";s:24:"sources/database/xml.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:6:"tokens";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:6:"Tokens";s:11:"phpdoc_name";s:6:"tokens";}i:1;a:5:{s:4:"name";s:5:"query";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"Query that was executed";s:11:"phpdoc_name";s:5:"query";}i:2;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:19:"Database connection";s:11:"phpdoc_name";s:2:"db";}i:3;a:5:{s:4:"name";s:7:"fail_ok";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:124:"Whether to not output an error on some kind of run-time failure (parse errors and clear programming errors are always fatal)";s:11:"phpdoc_name";s:7:"fail_ok";}i:4;a:5:{s:4:"name";s:13:"get_insert_id";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:63:"Whether to get the autoincrement ID created for an insert query";s:11:"phpdoc_name";s:13:"get_insert_id";}i:5;a:5:{s:4:"name";s:10:"random_key";s:3:"ref";b:1;s:4:"type";s:8:"?integer";s:11:"description";s:58:"The random key that we would use (null: not generated yet)";s:11:"phpdoc_name";s:10:"random_key";}i:6;a:7:{s:4:"name";s:16:"save_as_volatile";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:52:"Whether we are saving as a 'volatile' file extension";s:11:"phpdoc_name";s:16:"save_as_volatile";}}s:4:"name";s:16:"_do_query_insert";s:11:"description";s:35:"Wrapper to execute an INSERT query.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:43:"The insert ID (null: not requested / error)";}}s:23:"_do_query_insert__parse";a:6:{s:8:"filename";s:24:"sources/database/xml.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:6:"tokens";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:6:"Tokens";s:11:"phpdoc_name";s:6:"tokens";}i:1;a:5:{s:4:"name";s:5:"query";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"Query that was executed";s:11:"phpdoc_name";s:5:"query";}i:2;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:19:"Database connection";s:11:"phpdoc_name";s:2:"db";}i:3;a:5:{s:4:"name";s:7:"fail_ok";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:124:"Whether to not output an error on some kind of run-time failure (parse errors and clear programming errors are always fatal)";s:11:"phpdoc_name";s:7:"fail_ok";}}s:4:"name";s:23:"_do_query_insert__parse";s:11:"description";s:22:"Parse an INSERT query.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:55:"A pair: the table, and the rows to insert (null: error)";}}s:25:"_do_query_insert__execute";a:6:{s:8:"filename";s:24:"sources/database/xml.php";s:10:"parameters";a:8:{i:0;a:5:{s:4:"name";s:7:"inserts";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:19:"Rows being inserted";s:11:"phpdoc_name";s:7:"inserts";}i:1;a:5:{s:4:"name";s:10:"table_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:31:"Table name we're inserting into";s:11:"phpdoc_name";s:10:"table_name";}i:2;a:5:{s:4:"name";s:5:"query";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"Query that was executed";s:11:"phpdoc_name";s:5:"query";}i:3;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:19:"Database connection";s:11:"phpdoc_name";s:2:"db";}i:4;a:5:{s:4:"name";s:7:"fail_ok";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:124:"Whether to not output an error on some kind of run-time failure (parse errors and clear programming errors are always fatal)";s:11:"phpdoc_name";s:7:"fail_ok";}i:5;a:5:{s:4:"name";s:13:"get_insert_id";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:63:"Whether to get the autoincrement ID created for an insert query";s:11:"phpdoc_name";s:13:"get_insert_id";}i:6;a:5:{s:4:"name";s:10:"random_key";s:3:"ref";b:1;s:4:"type";s:8:"?integer";s:11:"description";s:58:"The random key that we would use (null: not generated yet)";s:11:"phpdoc_name";s:10:"random_key";}i:7;a:7:{s:4:"name";s:16:"save_as_volatile";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:52:"Whether we are saving as a 'volatile' file extension";s:11:"phpdoc_name";s:16:"save_as_volatile";}}s:4:"name";s:25:"_do_query_insert__execute";s:11:"description";s:24:"Execute an INSERT query.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:43:"The insert ID (null: not requested / error)";}}s:24:"_parsing_read_expression";a:6:{s:8:"filename";s:24:"sources/database/xml.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:2:"at";s:3:"ref";b:1;s:4:"type";s:7:"integer";s:11:"description";s:18:"Our offset counter";s:11:"phpdoc_name";s:2:"at";}i:1;a:5:{s:4:"name";s:6:"tokens";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:6:"Tokens";s:11:"phpdoc_name";s:6:"tokens";}i:2;a:5:{s:4:"name";s:5:"query";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"Query that was executed";s:11:"phpdoc_name";s:5:"query";}i:3;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:19:"Database connection";s:11:"phpdoc_name";s:2:"db";}i:4;a:7:{s:4:"name";s:20:"look_for_connectives";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:83:"Whether to work as a connection point to seek out logic connection expression parts";s:11:"phpdoc_name";s:20:"look_for_connectives";}i:5;a:7:{s:4:"name";s:24:"look_for_any_connectives";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:88:"Whether to work as a connection point to seek out arithmetic connection expression parts";s:11:"phpdoc_name";s:24:"look_for_any_connectives";}i:6;a:7:{s:4:"name";s:7:"fail_ok";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:124:"Whether to not output an error on some kind of run-time failure (parse errors and clear programming errors are always fatal)";s:11:"phpdoc_name";s:7:"fail_ok";}}s:4:"name";s:24:"_parsing_read_expression";s:11:"description";s:24:"Parse an SQL expression.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:28:"The expression (null: error)";}}s:19:"_execute_expression";a:6:{s:8:"filename";s:24:"sources/database/xml.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:4:"expr";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:14:"The expression";s:11:"phpdoc_name";s:4:"expr";}i:1;a:5:{s:4:"name";s:8:"bindings";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:41:"Bindings available in the execution scope";s:11:"phpdoc_name";s:8:"bindings";}i:2;a:5:{s:4:"name";s:5:"query";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"Query that was executed";s:11:"phpdoc_name";s:5:"query";}i:3;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:19:"Database connection";s:11:"phpdoc_name";s:2:"db";}i:4;a:5:{s:4:"name";s:7:"fail_ok";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:124:"Whether to not output an error on some kind of run-time failure (parse errors and clear programming errors are always fatal)";s:11:"phpdoc_name";s:7:"fail_ok";}i:5;a:7:{s:4:"name";s:8:"full_set";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:71:"The full record set within a HAVING scope (null: not in a HAVING scope)";s:11:"phpdoc_name";s:8:"full_set";}}s:4:"name";s:19:"_execute_expression";s:11:"description";s:22:"Execute an expression.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:29:"The result (null: error/NULL)";}}s:16:"_do_query_update";a:6:{s:8:"filename";s:24:"sources/database/xml.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:6:"tokens";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:6:"Tokens";s:11:"phpdoc_name";s:6:"tokens";}i:1;a:5:{s:4:"name";s:5:"query";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"Query that was executed";s:11:"phpdoc_name";s:5:"query";}i:2;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:19:"Database connection";s:11:"phpdoc_name";s:2:"db";}i:3;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"The maximum number of rows to affect (null: no limit)";s:11:"phpdoc_name";s:3:"max";}i:4;a:5:{s:4:"name";s:5:"start";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:48:"The start row to affect (null: no specification)";s:11:"phpdoc_name";s:5:"start";}i:5;a:5:{s:4:"name";s:7:"fail_ok";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:124:"Whether to not output an error on some kind of run-time failure (parse errors and clear programming errors are always fatal)";s:11:"phpdoc_name";s:7:"fail_ok";}}s:4:"name";s:16:"_do_query_update";s:11:"description";s:24:"Execute an UPDATE query.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:30:"The results (null: no results)";}}s:16:"_do_query_delete";a:6:{s:8:"filename";s:24:"sources/database/xml.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:6:"tokens";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:6:"Tokens";s:11:"phpdoc_name";s:6:"tokens";}i:1;a:5:{s:4:"name";s:5:"query";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"Query that was executed";s:11:"phpdoc_name";s:5:"query";}i:2;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:19:"Database connection";s:11:"phpdoc_name";s:2:"db";}i:3;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"The maximum number of rows to affect (null: no limit)";s:11:"phpdoc_name";s:3:"max";}i:4;a:5:{s:4:"name";s:5:"start";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:48:"The start row to affect (null: no specification)";s:11:"phpdoc_name";s:5:"start";}i:5;a:5:{s:4:"name";s:7:"fail_ok";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:124:"Whether to not output an error on some kind of run-time failure (parse errors and clear programming errors are always fatal)";s:11:"phpdoc_name";s:7:"fail_ok";}}s:4:"name";s:16:"_do_query_delete";s:11:"description";s:23:"Execute a DELETE query.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:30:"The results (null: no results)";}}s:16:"_do_query_select";a:6:{s:8:"filename";s:24:"sources/database/xml.php";s:10:"parameters";a:8:{i:0;a:5:{s:4:"name";s:6:"tokens";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:6:"Tokens";s:11:"phpdoc_name";s:6:"tokens";}i:1;a:5:{s:4:"name";s:5:"query";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"Query that was executed";s:11:"phpdoc_name";s:5:"query";}i:2;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:19:"Database connection";s:11:"phpdoc_name";s:2:"db";}i:3;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"The maximum number of rows to affect (null: no limit)";s:11:"phpdoc_name";s:3:"max";}i:4;a:5:{s:4:"name";s:5:"start";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:48:"The start row to affect (null: no specification)";s:11:"phpdoc_name";s:5:"start";}i:5;a:5:{s:4:"name";s:7:"fail_ok";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:124:"Whether to not output an error on some kind of run-time failure (parse errors and clear programming errors are always fatal)";s:11:"phpdoc_name";s:7:"fail_ok";}i:6;a:5:{s:4:"name";s:2:"at";s:3:"ref";b:1;s:4:"type";s:7:"integer";s:11:"description";s:18:"Our offset counter";s:11:"phpdoc_name";s:2:"at";}i:7;a:7:{s:4:"name";s:12:"do_end_check";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:64:"Whether to not do the check to make sure we've parsed everything";s:11:"phpdoc_name";s:12:"do_end_check";}}s:4:"name";s:16:"_do_query_select";s:11:"description";s:23:"Execute a SELECT query.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:30:"The results (null: no results)";}}s:19:"_parse_query_select";a:6:{s:8:"filename";s:24:"sources/database/xml.php";s:10:"parameters";a:8:{i:0;a:5:{s:4:"name";s:6:"tokens";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:6:"Tokens";s:11:"phpdoc_name";s:6:"tokens";}i:1;a:5:{s:4:"name";s:5:"query";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"Query that was executed";s:11:"phpdoc_name";s:5:"query";}i:2;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:19:"Database connection";s:11:"phpdoc_name";s:2:"db";}i:3;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"The maximum number of rows to affect (null: no limit)";s:11:"phpdoc_name";s:3:"max";}i:4;a:5:{s:4:"name";s:5:"start";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:48:"The start row to affect (null: no specification)";s:11:"phpdoc_name";s:5:"start";}i:5;a:5:{s:4:"name";s:7:"fail_ok";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:124:"Whether to not output an error on some kind of run-time failure (parse errors and clear programming errors are always fatal)";s:11:"phpdoc_name";s:7:"fail_ok";}i:6;a:5:{s:4:"name";s:2:"at";s:3:"ref";b:1;s:4:"type";s:7:"integer";s:11:"description";s:18:"Our offset counter";s:11:"phpdoc_name";s:2:"at";}i:7;a:7:{s:4:"name";s:12:"do_end_check";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:64:"Whether to not do the check to make sure we've parsed everything";s:11:"phpdoc_name";s:12:"do_end_check";}}s:4:"name";s:19:"_parse_query_select";s:11:"description";s:21:"Parse a SELECT query.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:36:"A tuple of query parts (null: error)";}}s:21:"_execute_query_select";a:6:{s:8:"filename";s:24:"sources/database/xml.php";s:10:"parameters";a:14:{i:0;a:5:{s:4:"name";s:6:"select";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"Select constructs";s:11:"phpdoc_name";s:6:"select";}i:1;a:5:{s:4:"name";s:2:"as";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:91:"The renaming of our table, so we can recognise it in the join condition (null: no renaming)";s:11:"phpdoc_name";s:2:"as";}i:2;a:5:{s:4:"name";s:5:"joins";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"Join constructs";s:11:"phpdoc_name";s:5:"joins";}i:3;a:5:{s:4:"name";s:10:"where_expr";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:16:"Where constructs";s:11:"phpdoc_name";s:10:"where_expr";}i:4;a:5:{s:4:"name";s:8:"group_by";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:35:"Grouping by constructs (null: none)";s:11:"phpdoc_name";s:8:"group_by";}i:5;a:5:{s:4:"name";s:6:"having";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:29:"Having construct (null: none)";s:11:"phpdoc_name";s:6:"having";}i:6;a:5:{s:4:"name";s:6:"orders";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:45:"Ordering string for sort_maps_by (null: none)";s:11:"phpdoc_name";s:6:"orders";}i:7;a:5:{s:4:"name";s:6:"unions";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:16:"Union constructs";s:11:"phpdoc_name";s:6:"unions";}i:8;a:5:{s:4:"name";s:5:"query";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"Query that was executed";s:11:"phpdoc_name";s:5:"query";}i:9;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:19:"Database connection";s:11:"phpdoc_name";s:2:"db";}i:10;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"The maximum number of rows to affect (null: no limit)";s:11:"phpdoc_name";s:3:"max";}i:11;a:5:{s:4:"name";s:5:"start";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:48:"The start row to affect (null: no specification)";s:11:"phpdoc_name";s:5:"start";}i:12;a:5:{s:4:"name";s:8:"bindings";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:41:"Bindings available in the execution scope";s:11:"phpdoc_name";s:8:"bindings";}i:13;a:5:{s:4:"name";s:7:"fail_ok";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:124:"Whether to not output an error on some kind of run-time failure (parse errors and clear programming errors are always fatal)";s:11:"phpdoc_name";s:7:"fail_ok";}}s:4:"name";s:21:"_execute_query_select";s:11:"description";s:30:"Execute a parsed SELECT query.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:30:"The results (null: no results)";}}s:15:"_param_name_for";a:6:{s:8:"filename";s:24:"sources/database/xml.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"param";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:10:"Expression";s:11:"phpdoc_name";s:5:"param";}i:1;a:5:{s:4:"name";s:1:"i";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:21:"Offset in a field set";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:15:"_param_name_for";s:11:"description";s:49:"Extract a save parameter name from an expression.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:14:"Parameter name";}}s:21:"_function_set_scoping";a:6:{s:8:"filename";s:24:"sources/database/xml.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:3:"set";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:38:"The set of results we are operating on";s:11:"phpdoc_name";s:3:"set";}i:1;a:5:{s:4:"name";s:6:"select";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:35:"Parse tree of what we are selecting";s:11:"phpdoc_name";s:6:"select";}i:2;a:5:{s:4:"name";s:3:"rep";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:47:"Record we are copying the function results into";s:11:"phpdoc_name";s:3:"rep";}i:3;a:5:{s:4:"name";s:5:"query";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"Query that was executed";s:11:"phpdoc_name";s:5:"query";}i:4;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:19:"Database connection";s:11:"phpdoc_name";s:2:"db";}i:5;a:5:{s:4:"name";s:7:"fail_ok";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:124:"Whether to not output an error on some kind of run-time failure (parse errors and clear programming errors are always fatal)";s:11:"phpdoc_name";s:7:"fail_ok";}}s:4:"name";s:21:"_function_set_scoping";s:11:"description";s:48:"Run SQL data filter functions over a result set.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:31:"The result row based on the set";}}s:10:"_read_join";a:6:{s:8:"filename";s:24:"sources/database/xml.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:2:"at";s:3:"ref";b:1;s:4:"type";s:7:"integer";s:11:"description";s:18:"Our offset counter";s:11:"phpdoc_name";s:2:"at";}i:1;a:5:{s:4:"name";s:6:"tokens";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:6:"Tokens";s:11:"phpdoc_name";s:6:"tokens";}i:2;a:5:{s:4:"name";s:5:"query";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"Query that was executed";s:11:"phpdoc_name";s:5:"query";}i:3;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:19:"Database connection";s:11:"phpdoc_name";s:2:"db";}i:4;a:5:{s:4:"name";s:7:"fail_ok";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:124:"Whether to not output an error on some kind of run-time failure (parse errors and clear programming errors are always fatal)";s:11:"phpdoc_name";s:7:"fail_ok";}i:5;a:5:{s:4:"name";s:23:"closing_brackets_needed";s:3:"ref";b:1;s:4:"type";s:7:"integer";s:11:"description";s:35:"How many closing brackets we expect";s:11:"phpdoc_name";s:23:"closing_brackets_needed";}}s:4:"name";s:10:"_read_join";s:11:"description";s:51:"Read in a table specifier clause for a WHERE query.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:35:"Join condition (null: no join here)";}}s:39:"_setify_join_condition_for_optimisation";a:6:{s:8:"filename";s:24:"sources/database/xml.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:14:"join_condition";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:42:"Join condition (parsed WHERE-style clause)";s:11:"phpdoc_name";s:14:"join_condition";}i:1;a:5:{s:4:"name";s:6:"schema";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:13:"Schema so far";s:11:"phpdoc_name";s:6:"schema";}i:2;a:5:{s:4:"name";s:7:"records";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:14:"Records so far";s:11:"phpdoc_name";s:7:"records";}i:3;a:5:{s:4:"name";s:9:"joined_as";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:71:"The renaming of our table, so we can recognise it in the join condition";s:11:"phpdoc_name";s:9:"joined_as";}}s:4:"name";s:39:"_setify_join_condition_for_optimisation";s:11:"description";s:81:"Optimize a join condition into a join scope set, if possible.This is destructive.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"Altered join condition";}}s:13:"_execute_join";a:6:{s:8:"filename";s:24:"sources/database/xml.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:19:"Database connection";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:15:"joined_as_prior";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:71:"The renaming of our table, so we can recognise it in the join condition";s:11:"phpdoc_name";s:15:"joined_as_prior";}i:2;a:5:{s:4:"name";s:4:"join";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:12:"Join op-tree";s:11:"phpdoc_name";s:4:"join";}i:3;a:5:{s:4:"name";s:5:"query";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"Query that was executed";s:11:"phpdoc_name";s:5:"query";}i:4;a:5:{s:4:"name";s:7:"records";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:14:"Records so far";s:11:"phpdoc_name";s:7:"records";}i:5;a:5:{s:4:"name";s:6:"schema";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:13:"Schema so far";s:11:"phpdoc_name";s:6:"schema";}i:6;a:5:{s:4:"name";s:10:"where_expr";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:92:"Expression filtering results (used for optimisation, seeing if we can get a quick key match)";s:11:"phpdoc_name";s:10:"where_expr";}i:7;a:5:{s:4:"name";s:8:"bindings";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:41:"Bindings available in the execution scope";s:11:"phpdoc_name";s:8:"bindings";}i:8;a:7:{s:4:"name";s:7:"fail_ok";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:124:"Whether to not output an error on some kind of run-time failure (parse errors and clear programming errors are always fatal)";s:11:"phpdoc_name";s:7:"fail_ok";}}s:4:"name";s:13:"_execute_join";s:11:"description";s:24:"Get results from a JOIN.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:90:"A pair: an array of results, an array of the schema for what has been joined (null: error)";}}s:13:"_parsing_read";a:6:{s:8:"filename";s:24:"sources/database/xml.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:2:"at";s:3:"ref";b:1;s:4:"type";s:7:"integer";s:11:"description";s:18:"Our offset counter";s:11:"phpdoc_name";s:2:"at";}i:1;a:5:{s:4:"name";s:6:"tokens";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:6:"Tokens";s:11:"phpdoc_name";s:6:"tokens";}i:2;a:5:{s:4:"name";s:5:"query";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"Query that was executed";s:11:"phpdoc_name";s:5:"query";}i:3;a:7:{s:4:"name";s:7:"fail_ok";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:67:"Whether it can return null if we're out of output (otherwise fails)";s:11:"phpdoc_name";s:7:"fail_ok";}}s:4:"name";s:13:"_parsing_read";s:11:"description";s:21:"Reads the next token.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:38:"Token read (null: error, read too far)";}}s:16:"_parsing_expects";a:6:{s:8:"filename";s:24:"sources/database/xml.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:2:"at";s:3:"ref";b:1;s:4:"type";s:7:"integer";s:11:"description";s:18:"Our offset counter";s:11:"phpdoc_name";s:2:"at";}i:1;a:5:{s:4:"name";s:6:"tokens";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:6:"Tokens";s:11:"phpdoc_name";s:6:"tokens";}i:2;a:5:{s:4:"name";s:5:"token";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"Token expected";s:11:"phpdoc_name";s:5:"token";}i:3;a:5:{s:4:"name";s:5:"query";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"Query that was executed";s:11:"phpdoc_name";s:5:"query";}i:4;a:7:{s:4:"name";s:7:"fail_ok";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:124:"Whether to not output an error on some kind of run-time failure (parse errors and clear programming errors are always fatal)";s:11:"phpdoc_name";s:7:"fail_ok";}}s:4:"name";s:16:"_parsing_expects";s:11:"description";s:28:"Expect a certain token next.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}s:20:"_parsing_check_ended";a:6:{s:8:"filename";s:24:"sources/database/xml.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:2:"at";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:18:"Our offset counter";s:11:"phpdoc_name";s:2:"at";}i:1;a:5:{s:4:"name";s:6:"tokens";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:6:"Tokens";s:11:"phpdoc_name";s:6:"tokens";}i:2;a:5:{s:4:"name";s:5:"query";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"Query that was executed";s:11:"phpdoc_name";s:5:"query";}i:3;a:7:{s:4:"name";s:7:"fail_ok";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:124:"Whether to not output an error on some kind of run-time failure (parse errors and clear programming errors are always fatal)";s:11:"phpdoc_name";s:7:"fail_ok";}}s:4:"name";s:20:"_parsing_check_ended";s:11:"description";s:36:"Check we've consumed all our tokens.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:14:"Success status";}}s:10:"_bad_query";a:6:{s:8:"filename";s:24:"sources/database/xml.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"query";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The query that failed";s:11:"phpdoc_name";s:5:"query";}i:1;a:7:{s:4:"name";s:7:"fail_ok";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:124:"Whether to not output an error on some kind of run-time failure (parse errors and clear programming errors are always fatal)";s:11:"phpdoc_name";s:7:"fail_ok";}i:2;a:7:{s:4:"name";s:5:"error";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:26:"Error message (null: none)";s:11:"phpdoc_name";s:5:"error";}}s:4:"name";s:10:"_bad_query";s:11:"description";s:54:"Give out an error message and die, when a query fails.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:33:"Always returns null (null: error)";}}s:5:"_guid";a:6:{s:8:"filename";s:24:"sources/database/xml.php";s:10:"parameters";a:2:{i:0;a:7:{s:4:"name";s:6:"schema";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:33:"The schema (null: don't have/use)";s:11:"phpdoc_name";s:6:"schema";}i:1;a:7:{s:4:"name";s:6:"record";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:33:"The record (null: don't have/use)";s:11:"phpdoc_name";s:6:"record";}}s:4:"name";s:5:"_guid";s:11:"description";s:78:"Generate a GUID for a record, preferably from the key, but doesn't have to be.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:8:"The GUID";}}s:12:"_escape_name";a:6:{s:8:"filename";s:24:"sources/database/xml.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"in";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:32:"Value to escape (original value)";s:11:"phpdoc_name";s:2:"in";}}s:4:"name";s:12:"_escape_name";s:11:"description";s:44:"Escape a value for use in a filesystem path.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:13:"Escaped value";}}s:14:"_unescape_name";a:6:{s:8:"filename";s:24:"sources/database/xml.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"in";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"Escaped value";s:11:"phpdoc_name";s:2:"in";}}s:4:"name";s:14:"_unescape_name";s:11:"description";s:61:"Unescape a value from a filesystem path back to the original.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:14:"Original value";}}}s:4:"name";s:19:"Database_Static_xml";s:7:"comment";b:1;}s:17:"DatabaseConnector";a:3:{s:9:"functions";a:32:{s:11:"__construct";a:5:{s:8:"filename";s:20:"sources/database.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:7:"db_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:17:"The database name";s:11:"phpdoc_name";s:7:"db_name";}i:1;a:5:{s:4:"name";s:7:"db_host";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:19:"The database server";s:11:"phpdoc_name";s:7:"db_host";}i:2;a:5:{s:4:"name";s:7:"db_user";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"The connection username";s:11:"phpdoc_name";s:7:"db_user";}i:3;a:5:{s:4:"name";s:11:"db_password";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"The connection password";s:11:"phpdoc_name";s:11:"db_password";}i:4;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:16:"The table prefix";s:11:"phpdoc_name";s:12:"table_prefix";}i:5;a:7:{s:4:"name";s:7:"fail_ok";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:93:"Whether to on error echo an error and return with a null, rather than giving a critical error";s:11:"phpdoc_name";s:7:"fail_ok";}i:6;a:7:{s:4:"name";s:6:"static";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?object";s:11:"description";s:56:"Static call object (null: use global static call object)";s:11:"phpdoc_name";s:6:"static";}}s:4:"name";s:11:"__construct";s:11:"description";s:55:"Construct a database driver from connection parameters.";s:5:"flags";a:0:{}}s:16:"get_table_prefix";a:6:{s:8:"filename";s:20:"sources/database.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_table_prefix";s:11:"description";s:170:"Get the table prefixes used for all Composr tables, commonly used when you are installing Composr in the same database as your forums. The default table prefix is 'cms_'.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:16:"The table prefix";}}s:24:"initialise_filesystem_db";a:5:{s:8:"filename";s:20:"sources/database.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"initialise_filesystem_db";s:11:"description";s:55:"Initialise a filesystem DB that we can use for caching.";s:5:"flags";a:0:{}}s:12:"table_exists";a:6:{s:8:"filename";s:20:"sources/database.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:10:"table_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The table name";s:11:"phpdoc_name";s:10:"table_name";}i:1;a:7:{s:4:"name";s:6:"really";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:48:"Check direct, not using meta-table (if possible)";s:11:"phpdoc_name";s:6:"really";}}s:4:"name";s:12:"table_exists";s:11:"description";s:24:"Check if a table exists.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:17:"Whether it exists";}}s:12:"create_table";a:5:{s:8:"filename";s:20:"sources/database.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:10:"table_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The table name";s:11:"phpdoc_name";s:10:"table_name";}i:1;a:5:{s:4:"name";s:6:"fields";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:10:"The fields";s:11:"phpdoc_name";s:6:"fields";}i:2;a:7:{s:4:"name";s:15:"skip_size_check";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:130:"Whether to skip the size check for the table (only do this for addon modules that don't need to support anything other than MySQL)";s:11:"phpdoc_name";s:15:"skip_size_check";}i:3;a:7:{s:4:"name";s:15:"skip_null_check";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:48:"Whether to skip the check for null string fields";s:11:"phpdoc_name";s:15:"skip_null_check";}i:4;a:7:{s:4:"name";s:10:"save_bytes";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:143:"Whether to use lower-byte table storage, with tradeoffs of not being able to support all unicode characters; use this if key length is an issue";s:11:"phpdoc_name";s:10:"save_bytes";}}s:4:"name";s:12:"create_table";s:11:"description";s:198:"Create a table with the given name and the given array of field name to type mappings.If a field type starts '*', then it is part of that field's key. If it starts '?', then it is an optional field.";s:5:"flags";a:0:{}}s:12:"create_index";a:5:{s:8:"filename";s:20:"sources/database.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:10:"table_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The table name";s:11:"phpdoc_name";s:10:"table_name";}i:1;a:5:{s:4:"name";s:10:"index_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The index name";s:11:"phpdoc_name";s:10:"index_name";}i:2;a:5:{s:4:"name";s:6:"fields";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:10:"The fields";s:11:"phpdoc_name";s:6:"fields";}i:3;a:7:{s:4:"name";s:16:"unique_key_field";s:7:"default";s:2:"id";s:11:"default_raw";s:4:"'id'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:46:"The name of the unique key field for the table";s:11:"phpdoc_name";s:16:"unique_key_field";}}s:4:"name";s:12:"create_index";s:11:"description";s:90:"Add an index to a table without disturbing the contents, after the table has been created.";s:5:"flags";a:0:{}}s:16:"bulk_insert_flip";a:6:{s:8:"filename";s:20:"sources/database.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"maps";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:12:"List of maps";s:11:"phpdoc_name";s:4:"maps";}}s:4:"name";s:16:"bulk_insert_flip";s:11:"description";s:69:"Turn a list of maps into the bulk-insert format used by query_insert.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:32:"The row format for bulk-inserts.";}}s:12:"query_insert";a:6:{s:8:"filename";s:20:"sources/database.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:5:"table";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The table name";s:11:"phpdoc_name";s:5:"table";}i:1;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:123:"The insertion map. Each map may point to an array of values for bulk-inserts, as long as the size of each array is the same";s:11:"phpdoc_name";s:3:"map";}i:2;a:7:{s:4:"name";s:3:"ret";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:36:"Whether to return the auto-insert-id";s:11:"phpdoc_name";s:3:"ret";}i:3;a:7:{s:4:"name";s:7:"fail_ok";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:77:"Whether to allow failure (outputting a message instead of exiting completely)";s:11:"phpdoc_name";s:7:"fail_ok";}i:4;a:7:{s:4:"name";s:16:"save_as_volatile";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:127:"Whether we are saving as a 'volatile' file extension (used in the XML DB driver, to mark things as being non-syndicated to git)";s:11:"phpdoc_name";s:16:"save_as_volatile";}}s:4:"name";s:12:"query_insert";s:11:"description";s:13:"Insert a row.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:21:"The ID of the new row";}}s:17:"_get_where_expand";a:6:{s:8:"filename";s:20:"sources/database.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:5:"table";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:24:"The table to select from";s:11:"phpdoc_name";s:5:"table";}i:1;a:7:{s:4:"name";s:10:"select_map";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:43:"List of field selections (null: all fields)";s:11:"phpdoc_name";s:10:"select_map";}i:2;a:7:{s:4:"name";s:9:"where_map";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:50:"Map of conditions to enforce (null: no conditions)";s:11:"phpdoc_name";s:9:"where_map";}i:3;a:7:{s:4:"name";s:3:"end";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"Additional stuff to tack onto the query";s:11:"phpdoc_name";s:3:"end";}}s:4:"name";s:17:"_get_where_expand";s:11:"description";s:46:"Create a SELECT query from some abstract data.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:9:"SQL query";}}s:18:"query_select_value";a:6:{s:8:"filename";s:20:"sources/database.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:5:"table";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The table name";s:11:"phpdoc_name";s:5:"table";}i:1;a:5:{s:4:"name";s:14:"selected_value";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:19:"The field to select";s:11:"phpdoc_name";s:14:"selected_value";}i:2;a:7:{s:4:"name";s:9:"where_map";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:70:"The WHERE map [will all be AND'd together] (null: no where conditions)";s:11:"phpdoc_name";s:9:"where_map";}i:3;a:7:{s:4:"name";s:3:"end";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:30:"Something to tack onto the end";s:11:"phpdoc_name";s:3:"end";}i:4;a:7:{s:4:"name";s:7:"fail_ok";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:77:"Whether to allow failure (outputting a message instead of exiting completely)";s:11:"phpdoc_name";s:7:"fail_ok";}i:5;a:7:{s:4:"name";s:11:"lang_fields";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:207:"Extra language fields to join in for cache-prefilling. You only need to send this if you are doing a JOIN and carefully craft your query so table field names won't conflict (null: auto-detect, if not a join)";s:11:"phpdoc_name";s:11:"lang_fields";}}s:4:"name";s:18:"query_select_value";s:11:"description";s:152:"Get the specified value from the database. This is the specified value of the first row returned. A fatal error is produced if there is no matching row.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:41:"The first value of the first row returned";}}s:19:"_query_select_value";a:6:{s:8:"filename";s:20:"sources/database.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"values";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:16:"The list of maps";s:11:"phpdoc_name";s:6:"values";}}s:4:"name";s:19:"_query_select_value";s:11:"description";s:51:"Extract the first of the first of the list of maps.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:44:"The first value of the first row in the list";}}s:27:"query_select_value_if_there";a:6:{s:8:"filename";s:20:"sources/database.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:5:"table";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The table name";s:11:"phpdoc_name";s:5:"table";}i:1;a:5:{s:4:"name";s:6:"select";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:19:"The field to select";s:11:"phpdoc_name";s:6:"select";}i:2;a:7:{s:4:"name";s:9:"where_map";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:70:"The WHERE map [will all be AND'd together] (null: no where conditions)";s:11:"phpdoc_name";s:9:"where_map";}i:3;a:7:{s:4:"name";s:3:"end";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:30:"Something to tack onto the end";s:11:"phpdoc_name";s:3:"end";}i:4;a:7:{s:4:"name";s:7:"fail_ok";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:77:"Whether to allow failure (outputting a message instead of exiting completely)";s:11:"phpdoc_name";s:7:"fail_ok";}i:5;a:7:{s:4:"name";s:11:"lang_fields";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:207:"Extra language fields to join in for cache-prefilling. You only need to send this if you are doing a JOIN and carefully craft your query so table field names won't conflict (null: auto-detect, if not a join)";s:11:"phpdoc_name";s:11:"lang_fields";}}s:4:"name";s:27:"query_select_value_if_there";s:11:"description";s:213:"Get the specified value from the database, or null if there is no matching row (or if the value itself is null). This is good for detection existence of records, or for use if they might may or may not be present.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:84:"The first value of the first row returned (null: nothing found, or null value found)";}}s:20:"query_value_if_there";a:6:{s:8:"filename";s:20:"sources/database.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:5:"query";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:22:"The complete SQL query";s:11:"phpdoc_name";s:5:"query";}i:1;a:7:{s:4:"name";s:7:"fail_ok";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:77:"Whether to allow failure (outputting a message instead of exiting completely)";s:11:"phpdoc_name";s:7:"fail_ok";}i:2;a:7:{s:4:"name";s:17:"skip_safety_check";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether to skip the query safety check";s:11:"phpdoc_name";s:17:"skip_safety_check";}i:3;a:7:{s:4:"name";s:11:"lang_fields";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:207:"Extra language fields to join in for cache-prefilling. You only need to send this if you are doing a JOIN and carefully craft your query so table field names won't conflict (null: auto-detect, if not a join)";s:11:"phpdoc_name";s:11:"lang_fields";}}s:4:"name";s:20:"query_value_if_there";s:11:"description";s:191:"This function is a variant of query_select_value_if_there, by the fact that it only accepts a complete (and perfect) SQL query, instead of assembling one itself from the specified parameters.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:84:"The first value of the first row returned (null: nothing found, or null value found)";}}s:12:"query_select";a:6:{s:8:"filename";s:20:"sources/database.php";s:10:"parameters";a:8:{i:0;a:5:{s:4:"name";s:5:"table";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The table name";s:11:"phpdoc_name";s:5:"table";}i:1;a:7:{s:4:"name";s:6:"select";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:33:"The SELECT map (null: all fields)";s:11:"phpdoc_name";s:6:"select";}i:2;a:7:{s:4:"name";s:9:"where_map";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:64:"The WHERE map [will all be AND'd together] (null: no conditions)";s:11:"phpdoc_name";s:9:"where_map";}i:3;a:7:{s:4:"name";s:3:"end";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:47:"Something to tack onto the end of the SQL query";s:11:"phpdoc_name";s:3:"end";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:52:"The maximum number of rows to select (null: get all)";s:11:"phpdoc_name";s:3:"max";}i:5;a:7:{s:4:"name";s:5:"start";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:49:"The starting row to select (null: start at first)";s:11:"phpdoc_name";s:5:"start";}i:6;a:7:{s:4:"name";s:7:"fail_ok";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:77:"Whether to allow failure (outputting a message instead of exiting completely)";s:11:"phpdoc_name";s:7:"fail_ok";}i:7;a:7:{s:4:"name";s:11:"lang_fields";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:207:"Extra language fields to join in for cache-prefilling. You only need to send this if you are doing a JOIN and carefully craft your query so table field names won't conflict (null: auto-detect, if not a join)";s:11:"phpdoc_name";s:11:"lang_fields";}}s:4:"name";s:12:"query_select";s:11:"description";s:255:"Get the database rows found matching the specified parameters. Unlike 'query', it doesn't take raw SQL -- it assembles SQL based the parameters requested.Only use this if you're where condition is a series of AND clauses doing simple property comparisons.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:43:"The results (empty array: empty result set)";}}s:22:"_automatic_lang_fields";a:5:{s:8:"filename";s:20:"sources/database.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:5:"table";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:14:"The table name";s:11:"phpdoc_name";s:5:"table";}i:1;a:5:{s:4:"name";s:10:"full_table";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:31:"The table name, with prefix too";s:11:"phpdoc_name";s:10:"full_table";}i:2;a:5:{s:4:"name";s:6:"select";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:14:"The SELECT map";s:11:"phpdoc_name";s:6:"select";}i:3;a:5:{s:4:"name";s:9:"where_map";s:3:"ref";b:1;s:4:"type";s:6:"?array";s:11:"description";s:64:"The WHERE map [will all be AND'd together] (null: no conditions)";s:11:"phpdoc_name";s:9:"where_map";}i:4;a:5:{s:4:"name";s:3:"end";s:3:"ref";b:1;s:4:"type";s:6:"string";s:11:"description";s:47:"Something to tack onto the end of the SQL query";s:11:"phpdoc_name";s:3:"end";}i:5;a:5:{s:4:"name";s:11:"lang_fields";s:3:"ref";b:1;s:4:"type";s:6:"?array";s:11:"description";s:207:"Extra language fields to join in for cache-prefilling. You only need to send this if you are doing a JOIN and carefully craft your query so table field names won't conflict (null: auto-detect, if not a join)";s:11:"phpdoc_name";s:11:"lang_fields";}}s:4:"name";s:22:"_automatic_lang_fields";s:11:"description";s:58:"Work out $lang_fields from analysing the table, if needed.";s:5:"flags";a:0:{}}s:19:"query_parameterised";a:6:{s:8:"filename";s:20:"sources/database.php";s:10:"parameters";a:8:{i:0;a:5:{s:4:"name";s:5:"query";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:22:"The complete SQL query";s:11:"phpdoc_name";s:5:"query";}i:1;a:5:{s:4:"name";s:10:"parameters";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:28:"The query parameters (a map)";s:11:"phpdoc_name";s:10:"parameters";}i:2;a:7:{s:4:"name";s:3:"max";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"The maximum number of rows to affect (null: no limit)";s:11:"phpdoc_name";s:3:"max";}i:3;a:7:{s:4:"name";s:5:"start";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:48:"The start row to affect (null: no specification)";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:7:"fail_ok";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:37:"Whether to output an error on failure";s:11:"phpdoc_name";s:7:"fail_ok";}i:5;a:7:{s:4:"name";s:17:"skip_safety_check";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether to skip the query safety check";s:11:"phpdoc_name";s:17:"skip_safety_check";}i:6;a:7:{s:4:"name";s:11:"lang_fields";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:207:"Extra language fields to join in for cache-prefilling. You only need to send this if you are doing a JOIN and carefully craft your query so table field names won't conflict (null: auto-detect, if not a join)";s:11:"phpdoc_name";s:11:"lang_fields";}i:7;a:7:{s:4:"name";s:12:"field_prefix";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:161:"All the core fields have a prefix of this on them, so when we fiddle with language lookup we need to use this (only consider this if you're setting $lang_fields)";s:11:"phpdoc_name";s:12:"field_prefix";}}s:4:"name";s:19:"query_parameterised";s:11:"description";s:529:"Do a named-parameter query, like "SELECT * FROM foo WHERE a='{value}';" with array('value' => 'b').Assumes nothing looking like {example} is in the query already.Also supports {prefix} for encoding the table prefix.Lots of programmers like to do queries like this as it reduces the chance of accidentally forgetting to escape a parameter inserted directly/manually within a longer query.Usually in Composr we use APIs like query_select, which avoids the need for SQL all-together, but this doesn't work for all patterns of query.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:65:"The results (null: no result set) (empty array: empty result set)";}}s:5:"query";a:6:{s:8:"filename";s:20:"sources/database.php";s:10:"parameters";a:7:{i:0;a:5:{s:4:"name";s:5:"query";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:22:"The complete SQL query";s:11:"phpdoc_name";s:5:"query";}i:1;a:7:{s:4:"name";s:3:"max";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"The maximum number of rows to affect (null: no limit)";s:11:"phpdoc_name";s:3:"max";}i:2;a:7:{s:4:"name";s:5:"start";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:48:"The start row to affect (null: no specification)";s:11:"phpdoc_name";s:5:"start";}i:3;a:7:{s:4:"name";s:7:"fail_ok";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:37:"Whether to output an error on failure";s:11:"phpdoc_name";s:7:"fail_ok";}i:4;a:7:{s:4:"name";s:17:"skip_safety_check";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether to skip the query safety check";s:11:"phpdoc_name";s:17:"skip_safety_check";}i:5;a:7:{s:4:"name";s:11:"lang_fields";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:207:"Extra language fields to join in for cache-prefilling. You only need to send this if you are doing a JOIN and carefully craft your query so table field names won't conflict (null: auto-detect, if not a join)";s:11:"phpdoc_name";s:11:"lang_fields";}i:6;a:7:{s:4:"name";s:12:"field_prefix";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:161:"All the core fields have a prefix of this on them, so when we fiddle with language lookup we need to use this (only consider this if you're setting $lang_fields)";s:11:"phpdoc_name";s:12:"field_prefix";}}s:4:"name";s:5:"query";s:11:"description";s:241:"This function is a raw query executor. It shouldn't usually be used unless you need to write SQL involving 'OR' statements or other complexities. There are abstracted versions available which you probably want instead (mainly, query_select).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:65:"The results (null: no result set) (empty array: empty result set)";}}s:19:"translate_field_ref";a:6:{s:8:"filename";s:20:"sources/database.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:10:"field_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:19:"Language field name";s:11:"phpdoc_name";s:10:"field_name";}}s:4:"name";s:19:"translate_field_ref";s:11:"description";s:218:"Convert a field name of type SHORT/LONG_TRANS[__COMCODE] into something we may use directly in our SQL.Assumes the query has separately been informed of the $lang_fields parameter (which is automatic for query_select).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:24:"SQL field name reference";}}s:6:"_query";a:6:{s:8:"filename";s:20:"sources/database.php";s:10:"parameters";a:8:{i:0;a:5:{s:4:"name";s:5:"query";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:22:"The complete SQL query";s:11:"phpdoc_name";s:5:"query";}i:1;a:7:{s:4:"name";s:3:"max";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"The maximum number of rows to affect (null: no limit)";s:11:"phpdoc_name";s:3:"max";}i:2;a:7:{s:4:"name";s:5:"start";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:48:"The start row to affect (null: no specification)";s:11:"phpdoc_name";s:5:"start";}i:3;a:7:{s:4:"name";s:7:"fail_ok";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:37:"Whether to output an error on failure";s:11:"phpdoc_name";s:7:"fail_ok";}i:4;a:7:{s:4:"name";s:13:"get_insert_id";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether to get an insert ID";s:11:"phpdoc_name";s:13:"get_insert_id";}i:5;a:7:{s:4:"name";s:11:"lang_fields";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:207:"Extra language fields to join in for cache-prefilling. You only need to send this if you are doing a JOIN and carefully craft your query so table field names won't conflict (null: auto-detect, if not a join)";s:11:"phpdoc_name";s:11:"lang_fields";}i:6;a:7:{s:4:"name";s:12:"field_prefix";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:161:"All the core fields have a prefix of this on them, so when we fiddle with language lookup we need to use this (only consider this if you're setting $lang_fields)";s:11:"phpdoc_name";s:12:"field_prefix";}i:7;a:7:{s:4:"name";s:16:"save_as_volatile";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:127:"Whether we are saving as a 'volatile' file extension (used in the XML DB driver, to mark things as being non-syndicated to git)";s:11:"phpdoc_name";s:16:"save_as_volatile";}}s:4:"name";s:6:"_query";s:11:"description";s:138:"This function is a very basic query executor. It shouldn't usually be used by you, as there are specialised abstracted versions available.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?mixed";s:11:"description";s:65:"The results (null: no result set) (empty array: empty result set)";}}s:12:"query_update";a:6:{s:8:"filename";s:20:"sources/database.php";s:10:"parameters";a:8:{i:0;a:5:{s:4:"name";s:5:"table";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The table name";s:11:"phpdoc_name";s:5:"table";}i:1;a:5:{s:4:"name";s:10:"update_map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:14:"The UPDATE map";s:11:"phpdoc_name";s:10:"update_map";}i:2;a:7:{s:4:"name";s:9:"where_map";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:64:"The WHERE map [will all be AND'd together] (null: no conditions)";s:11:"phpdoc_name";s:9:"where_map";}i:3;a:7:{s:4:"name";s:3:"end";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:47:"Something to tack onto the end of the statement";s:11:"phpdoc_name";s:3:"end";}i:4;a:7:{s:4:"name";s:3:"max";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"The maximum number of rows to update (null: no limit)";s:11:"phpdoc_name";s:3:"max";}i:5;a:7:{s:4:"name";s:5:"start";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:52:"The starting row to update (null: no specific start)";s:11:"phpdoc_name";s:5:"start";}i:6;a:7:{s:4:"name";s:11:"num_touched";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:127:"Whether to get the number of touched rows. WARNING: Do not use in core Composr code as it does not work on all database drivers";s:11:"phpdoc_name";s:11:"num_touched";}i:7;a:7:{s:4:"name";s:7:"fail_ok";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:77:"Whether to allow failure (outputting a message instead of exiting completely)";s:11:"phpdoc_name";s:7:"fail_ok";}}s:4:"name";s:12:"query_update";s:11:"description";s:36:"Update (edit) a row in the database.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?integer";s:11:"description";s:63:"The number of touched records (null: hasn't been asked / error)";}}s:12:"query_delete";a:5:{s:8:"filename";s:20:"sources/database.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:5:"table";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The table name";s:11:"phpdoc_name";s:5:"table";}i:1;a:7:{s:4:"name";s:9:"where_map";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:64:"The WHERE map [will all be AND'd together] (null: no conditions)";s:11:"phpdoc_name";s:9:"where_map";}i:2;a:7:{s:4:"name";s:3:"end";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:47:"Something to tack onto the end of the statement";s:11:"phpdoc_name";s:3:"end";}i:3;a:7:{s:4:"name";s:3:"max";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"The maximum number of rows to delete (null: no limit)";s:11:"phpdoc_name";s:3:"max";}i:4;a:7:{s:4:"name";s:5:"start";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:52:"The starting row to delete (null: no specific start)";s:11:"phpdoc_name";s:5:"start";}i:5;a:7:{s:4:"name";s:7:"fail_ok";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:77:"Whether to allow failure (outputting a message instead of exiting completely)";s:11:"phpdoc_name";s:7:"fail_ok";}}s:4:"name";s:12:"query_delete";s:11:"description";s:198:"Deletes rows from the specified table, that match the specified conditions (if any). It may be limited to a row range (it is likely, only a maximum, of 1, will be used, if any kind of range at all).";s:5:"flags";a:0:{}}s:22:"delete_index_if_exists";a:5:{s:8:"filename";s:20:"sources/database.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:10:"table_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The table name";s:11:"phpdoc_name";s:10:"table_name";}i:1;a:5:{s:4:"name";s:10:"index_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The index name";s:11:"phpdoc_name";s:10:"index_name";}}s:4:"name";s:22:"delete_index_if_exists";s:11:"description";s:29:"Delete an index from a table.";s:5:"flags";a:0:{}}s:20:"drop_table_if_exists";a:5:{s:8:"filename";s:20:"sources/database.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"table";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The table name";s:11:"phpdoc_name";s:5:"table";}}s:4:"name";s:20:"drop_table_if_exists";s:11:"description";s:62:"Drop the given table, or if it doesn't exist, silently return.";s:5:"flags";a:0:{}}s:12:"rename_table";a:5:{s:8:"filename";s:20:"sources/database.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:3:"old";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:18:"The old table name";s:11:"phpdoc_name";s:3:"old";}i:1;a:5:{s:4:"name";s:3:"new";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:18:"The new table name";s:11:"phpdoc_name";s:3:"new";}}s:4:"name";s:12:"rename_table";s:11:"description";s:23:"Rename the given table.";s:5:"flags";a:0:{}}s:15:"add_table_field";a:5:{s:8:"filename";s:20:"sources/database.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:10:"table_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The table name";s:11:"phpdoc_name";s:10:"table_name";}i:1;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:4:"name";}i:2;a:5:{s:4:"name";s:5:"_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The field type";s:11:"phpdoc_name";s:5:"_type";}i:3;a:7:{s:4:"name";s:7:"default";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:6:"?mixed";s:11:"description";s:113:"The default value; for a translatable field should still be a string value (null: null default / default default)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:15:"add_table_field";s:11:"description";s:34:"Adds a field to an existing table.";s:5:"flags";a:0:{}}s:17:"alter_table_field";a:5:{s:8:"filename";s:20:"sources/database.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:10:"table_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The table name";s:11:"phpdoc_name";s:10:"table_name";}i:1;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:4:"name";}i:2;a:5:{s:4:"name";s:5:"_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:18:"The new field type";s:11:"phpdoc_name";s:5:"_type";}i:3;a:7:{s:4:"name";s:8:"new_name";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:37:"The new field name (null: leave name)";s:11:"phpdoc_name";s:8:"new_name";}}s:4:"name";s:17:"alter_table_field";s:11:"description";s:117:"Change the type of a DB field in a table. Note: this function does not support ascession/decession of translatability";s:5:"flags";a:0:{}}s:18:"change_primary_key";a:5:{s:8:"filename";s:20:"sources/database.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:10:"table_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:44:"The name of the table to create the index on";s:11:"phpdoc_name";s:10:"table_name";}i:1;a:5:{s:4:"name";s:7:"new_key";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:38:"A list of fields to put in the new key";s:11:"phpdoc_name";s:7:"new_key";}}s:4:"name";s:18:"change_primary_key";s:11:"description";s:34:"Change the primary key of a table.";s:5:"flags";a:0:{}}s:12:"add_auto_key";a:5:{s:8:"filename";s:20:"sources/database.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:10:"table_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:10:"Table name";s:11:"phpdoc_name";s:10:"table_name";}i:1;a:7:{s:4:"name";s:10:"field_name";s:7:"default";s:2:"id";s:11:"default_raw";s:4:"'id'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"Field name for new key";s:11:"phpdoc_name";s:10:"field_name";}}s:4:"name";s:12:"add_auto_key";s:11:"description";s:60:"Use an *AUTO key for a table that had some other key before.";s:5:"flags";a:0:{}}s:29:"promote_text_field_to_comcode";a:5:{s:8:"filename";s:20:"sources/database.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:10:"table_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The table name";s:11:"phpdoc_name";s:10:"table_name";}i:1;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:4:"name";}i:2;a:7:{s:4:"name";s:3:"key";s:7:"default";s:2:"id";s:11:"default_raw";s:4:"'id'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:25:"The tables key field name";s:11:"phpdoc_name";s:3:"key";}i:3;a:8:{s:4:"name";s:5:"level";s:7:"default";i:2;s:11:"default_raw";s:1:"2";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:28:"The translation level to use";s:11:"phpdoc_name";s:5:"level";s:3:"set";s:7:"1 2 3 4";}i:4;a:7:{s:4:"name";s:11:"in_assembly";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:62:"Whether our data is already stored in Tempcode assembly format";s:11:"phpdoc_name";s:11:"in_assembly";}}s:4:"name";s:29:"promote_text_field_to_comcode";s:11:"description";s:72:"If a text field has picked up Comcode support, we will need to run this.";s:5:"flags";a:0:{}}s:18:"delete_table_field";a:5:{s:8:"filename";s:20:"sources/database.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:10:"table_name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The table name";s:11:"phpdoc_name";s:10:"table_name";}i:1;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The field name";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:18:"delete_table_field";s:11:"description";s:52:"Delete the specified field from the specified table.";s:5:"flags";a:0:{}}s:24:"refresh_field_definition";a:5:{s:8:"filename";s:20:"sources/database.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The field type";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:24:"refresh_field_definition";s:11:"description";s:110:"If we've changed what $type is stored as, this function will need to be called to change the typing in the DB.";s:5:"flags";a:0:{}}s:15:"table_is_locked";a:6:{s:8:"filename";s:20:"sources/database.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"table";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"The table name";s:11:"phpdoc_name";s:5:"table";}}s:4:"name";s:15:"table_is_locked";s:11:"description";s:73:"Find if a table is locked for more than 5 seconds. Only works with MySQL.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether the table is locked";}}}s:4:"name";s:17:"DatabaseConnector";s:7:"comment";b:1;}s:14:"DatabaseRepair";a:3:{s:9:"functions";a:25:{s:26:"search_for_database_issues";a:6:{s:8:"filename";s:27:"sources/database_repair.php";s:10:"parameters";a:0:{}s:4:"name";s:26:"search_for_database_issues";s:11:"description";s:25:"Look for database issues.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:49:"A pair: Phase where errors happened (1 or 2), SQL";}}s:28:"search_for_meta_table_issues";a:6:{s:8:"filename";s:27:"sources/database_repair.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:15:"existent_tables";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"Existent tables";s:11:"phpdoc_name";s:15:"existent_tables";}i:1;a:5:{s:4:"name";s:11:"meta_tables";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:11:"Meta tables";s:11:"phpdoc_name";s:11:"meta_tables";}i:2;a:5:{s:4:"name";s:15:"expected_tables";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"Expected tables";s:11:"phpdoc_name";s:15:"expected_tables";}}s:4:"name";s:28:"search_for_meta_table_issues";s:11:"description";s:62:"Search for issues between the meta tables and existent tables.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:36:"Whether there have been issues found";}}s:28:"search_for_meta_index_issues";a:6:{s:8:"filename";s:27:"sources/database_repair.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:16:"existent_indices";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:16:"Existent indices";s:11:"phpdoc_name";s:16:"existent_indices";}i:1;a:5:{s:4:"name";s:12:"meta_indices";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:12:"Meta indices";s:11:"phpdoc_name";s:12:"meta_indices";}i:2;a:5:{s:4:"name";s:11:"meta_tables";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:11:"Meta tables";s:11:"phpdoc_name";s:11:"meta_tables";}}s:4:"name";s:28:"search_for_meta_index_issues";s:11:"description";s:64:"Search for issues between the meta indices and existent indices.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:36:"Whether there have been issues found";}}s:23:"search_for_table_issues";a:6:{s:8:"filename";s:27:"sources/database_repair.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:15:"existent_tables";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"Existent tables";s:11:"phpdoc_name";s:15:"existent_tables";}i:1;a:5:{s:4:"name";s:15:"expected_tables";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"Expected tables";s:11:"phpdoc_name";s:15:"expected_tables";}i:2;a:5:{s:4:"name";s:11:"meta_tables";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:11:"Meta tables";s:11:"phpdoc_name";s:11:"meta_tables";}}s:4:"name";s:23:"search_for_table_issues";s:11:"description";s:66:"Search for issues between the expected tables and existent tables.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:36:"Whether there have been issues found";}}s:24:"cleanup_mysql_field_type";a:6:{s:8:"filename";s:27:"sources/database_repair.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"raw_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:10:"Field type";s:11:"phpdoc_name";s:8:"raw_type";}}s:4:"name";s:24:"cleanup_mysql_field_type";s:11:"description";s:63:"Convert a MySQL field type to something we can compare against.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:10:"Field tpye";}}s:23:"search_for_index_issues";a:6:{s:8:"filename";s:27:"sources/database_repair.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:16:"existent_indices";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:16:"Existent indices";s:11:"phpdoc_name";s:16:"existent_indices";}i:1;a:5:{s:4:"name";s:16:"expected_indices";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:16:"Expected indices";s:11:"phpdoc_name";s:16:"expected_indices";}i:2;a:5:{s:4:"name";s:12:"meta_indices";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:12:"Meta indices";s:11:"phpdoc_name";s:12:"meta_indices";}i:3;a:5:{s:4:"name";s:11:"meta_tables";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:11:"Meta tables";s:11:"phpdoc_name";s:11:"meta_tables";}}s:4:"name";s:23:"search_for_index_issues";s:11:"description";s:68:"Search for issues between the expected indices and existent indices.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:36:"Whether there have been issues found";}}s:27:"search_for_privilege_issues";a:6:{s:8:"filename";s:27:"sources/database_repair.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:19:"existent_privileges";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:19:"Existent privileges";s:11:"phpdoc_name";s:19:"existent_privileges";}i:1;a:5:{s:4:"name";s:19:"expected_privileges";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:19:"Expected privileges";s:11:"phpdoc_name";s:19:"expected_privileges";}}s:4:"name";s:27:"search_for_privilege_issues";s:11:"description";s:74:"Search for issues between the expected privileges and existent privileges.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:36:"Whether there have been issues found";}}s:39:"fix_table_missing_in_meta__create_field";a:5:{s:8:"filename";s:27:"sources/database_repair.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:10:"table_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:10:"Table name";s:11:"phpdoc_name";s:10:"table_name";}i:1;a:5:{s:4:"name";s:10:"field_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:10:"Field name";s:11:"phpdoc_name";s:10:"field_name";}i:2;a:5:{s:4:"name";s:10:"field_type";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:10:"Field type";s:11:"phpdoc_name";s:10:"field_type";}}s:4:"name";s:39:"fix_table_missing_in_meta__create_field";s:11:"description";s:49:"Table field is existent but meta details missing.";s:5:"flags";a:0:{}}s:28:"create_table_missing_in_meta";a:5:{s:8:"filename";s:27:"sources/database_repair.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:10:"table_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:10:"Table name";s:11:"phpdoc_name";s:10:"table_name";}i:1;a:5:{s:4:"name";s:5:"table";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:13:"Table details";s:11:"phpdoc_name";s:5:"table";}}s:4:"name";s:28:"create_table_missing_in_meta";s:11:"description";s:43:"Table is exixtent but meta details missing.";s:5:"flags";a:0:{}}s:28:"create_table_missing_from_db";a:5:{s:8:"filename";s:27:"sources/database_repair.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:10:"table_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:10:"Table name";s:11:"phpdoc_name";s:10:"table_name";}i:1;a:5:{s:4:"name";s:5:"table";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:13:"Table details";s:11:"phpdoc_name";s:5:"table";}i:2;a:5:{s:4:"name";s:12:"include_meta";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:21:"Make meta changes too";s:11:"phpdoc_name";s:12:"include_meta";}}s:4:"name";s:28:"create_table_missing_from_db";s:11:"description";s:32:"Table is not there so create it.";s:5:"flags";a:0:{}}s:42:"fix_table_inconsistent_in_db__create_field";a:5:{s:8:"filename";s:27:"sources/database_repair.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:10:"table_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:10:"Table name";s:11:"phpdoc_name";s:10:"table_name";}i:1;a:5:{s:4:"name";s:10:"field_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:10:"Field name";s:11:"phpdoc_name";s:10:"field_name";}i:2;a:5:{s:4:"name";s:10:"field_type";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:10:"Field type";s:11:"phpdoc_name";s:10:"field_type";}i:3;a:5:{s:4:"name";s:12:"include_meta";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:21:"Make meta changes too";s:11:"phpdoc_name";s:12:"include_meta";}}s:4:"name";s:42:"fix_table_inconsistent_in_db__create_field";s:11:"description";s:38:"Table field is not there so create it.";s:5:"flags";a:0:{}}s:42:"fix_table_inconsistent_in_db__delete_field";a:5:{s:8:"filename";s:27:"sources/database_repair.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:10:"table_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:10:"Table name";s:11:"phpdoc_name";s:10:"table_name";}i:1;a:5:{s:4:"name";s:10:"field_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:10:"Field name";s:11:"phpdoc_name";s:10:"field_name";}i:2;a:5:{s:4:"name";s:10:"field_type";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:10:"Field type";s:11:"phpdoc_name";s:10:"field_type";}i:3;a:5:{s:4:"name";s:12:"include_meta";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:21:"Make meta changes too";s:11:"phpdoc_name";s:12:"include_meta";}}s:4:"name";s:42:"fix_table_inconsistent_in_db__delete_field";s:11:"description";s:42:"Table field should not exist so delete it.";s:5:"flags";a:0:{}}s:44:"fix_table_inconsistent_in_db__bad_field_type";a:5:{s:8:"filename";s:27:"sources/database_repair.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:10:"table_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:10:"Table name";s:11:"phpdoc_name";s:10:"table_name";}i:1;a:5:{s:4:"name";s:10:"field_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:10:"Field name";s:11:"phpdoc_name";s:10:"field_name";}i:2;a:5:{s:4:"name";s:10:"field_type";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:10:"Field type";s:11:"phpdoc_name";s:10:"field_type";}i:3;a:5:{s:4:"name";s:12:"include_meta";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:21:"Make meta changes too";s:11:"phpdoc_name";s:12:"include_meta";}}s:4:"name";s:44:"fix_table_inconsistent_in_db__bad_field_type";s:11:"description";s:39:"Table field is of wrong type so fix it.";s:5:"flags";a:0:{}}s:45:"fix_table_inconsistent_in_db__bad_primary_key";a:6:{s:8:"filename";s:27:"sources/database_repair.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:10:"table_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:10:"Table name";s:11:"phpdoc_name";s:10:"table_name";}i:1;a:5:{s:4:"name";s:10:"key_fields";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:18:"List of key fields";s:11:"phpdoc_name";s:10:"key_fields";}i:2;a:5:{s:4:"name";s:12:"include_meta";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:21:"Make meta changes too";s:11:"phpdoc_name";s:12:"include_meta";}i:3;a:7:{s:4:"name";s:14:"return_queries";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:60:"Whether to return the main queries instead of inserting them";s:11:"phpdoc_name";s:14:"return_queries";}}s:4:"name";s:45:"fix_table_inconsistent_in_db__bad_primary_key";s:11:"description";s:32:"Table has wrong key so fix that.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:47:"Special queries (null: $return_queries not set)";}}s:24:"delete_table_alien_in_db";a:5:{s:8:"filename";s:27:"sources/database_repair.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:10:"table_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:10:"Table name";s:11:"phpdoc_name";s:10:"table_name";}i:1;a:5:{s:4:"name";s:12:"include_meta";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:21:"Make meta changes too";s:11:"phpdoc_name";s:12:"include_meta";}}s:4:"name";s:24:"delete_table_alien_in_db";s:11:"description";s:39:"Table should not be there so delete it.";s:5:"flags";a:0:{}}s:30:"fix_index_inconsistent_in_meta";a:5:{s:8:"filename";s:27:"sources/database_repair.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:10:"index_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:10:"Index name";s:11:"phpdoc_name";s:10:"index_name";}i:1;a:5:{s:4:"name";s:5:"index";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:13:"Index details";s:11:"phpdoc_name";s:5:"index";}}s:4:"name";s:30:"fix_index_inconsistent_in_meta";s:11:"description";s:74:"Fix inconsistent index meta details.Considers real DB canonical over meta.";s:5:"flags";a:0:{}}s:28:"create_index_missing_in_meta";a:5:{s:8:"filename";s:27:"sources/database_repair.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:10:"index_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:10:"Index name";s:11:"phpdoc_name";s:10:"index_name";}i:1;a:5:{s:4:"name";s:5:"index";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:13:"Index details";s:11:"phpdoc_name";s:5:"index";}}s:4:"name";s:28:"create_index_missing_in_meta";s:11:"description";s:72:"Create missing meta index details.Considers real DB canonical over meta.";s:5:"flags";a:0:{}}s:28:"create_index_missing_from_db";a:5:{s:8:"filename";s:27:"sources/database_repair.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:10:"index_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:10:"Index name";s:11:"phpdoc_name";s:10:"index_name";}i:1;a:5:{s:4:"name";s:5:"index";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:13:"Index details";s:11:"phpdoc_name";s:5:"index";}i:2;a:5:{s:4:"name";s:12:"include_meta";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:21:"Make meta changes too";s:11:"phpdoc_name";s:12:"include_meta";}i:3;a:5:{s:4:"name";s:11:"meta_tables";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:11:"Meta tables";s:11:"phpdoc_name";s:11:"meta_tables";}}s:4:"name";s:28:"create_index_missing_from_db";s:11:"description";s:21:"Create missing index.";s:5:"flags";a:0:{}}s:28:"fix_index_inconsistent_in_db";a:5:{s:8:"filename";s:27:"sources/database_repair.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:10:"index_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:10:"Index name";s:11:"phpdoc_name";s:10:"index_name";}i:1;a:5:{s:4:"name";s:5:"index";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:13:"Index details";s:11:"phpdoc_name";s:5:"index";}i:2;a:5:{s:4:"name";s:12:"include_meta";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:21:"Make meta changes too";s:11:"phpdoc_name";s:12:"include_meta";}i:3;a:5:{s:4:"name";s:11:"meta_tables";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:11:"Meta tables";s:11:"phpdoc_name";s:11:"meta_tables";}}s:4:"name";s:28:"fix_index_inconsistent_in_db";s:11:"description";s:23:"Fix inconsistent index.";s:5:"flags";a:0:{}}s:24:"delete_index_alien_in_db";a:5:{s:8:"filename";s:27:"sources/database_repair.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:10:"index_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:10:"Index name";s:11:"phpdoc_name";s:10:"index_name";}i:1;a:5:{s:4:"name";s:5:"index";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:13:"Index details";s:11:"phpdoc_name";s:5:"index";}i:2;a:5:{s:4:"name";s:12:"include_meta";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:21:"Make meta changes too";s:11:"phpdoc_name";s:12:"include_meta";}}s:4:"name";s:24:"delete_index_alien_in_db";s:11:"description";s:38:"Delete index that should not be there.";s:5:"flags";a:0:{}}s:32:"create_privilege_missing_from_db";a:5:{s:8:"filename";s:27:"sources/database_repair.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:14:"privilege_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"Privilege name";s:11:"phpdoc_name";s:14:"privilege_name";}i:1;a:5:{s:4:"name";s:9:"privilege";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"Privilege details";s:11:"phpdoc_name";s:9:"privilege";}}s:4:"name";s:32:"create_privilege_missing_from_db";s:11:"description";s:25:"Create missing privilege.";s:5:"flags";a:0:{}}s:32:"fix_privilege_inconsistent_in_db";a:5:{s:8:"filename";s:27:"sources/database_repair.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:14:"privilege_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"Privilege name";s:11:"phpdoc_name";s:14:"privilege_name";}i:1;a:5:{s:4:"name";s:9:"privilege";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:17:"Privilege details";s:11:"phpdoc_name";s:9:"privilege";}}s:4:"name";s:32:"fix_privilege_inconsistent_in_db";s:11:"description";s:27:"Fix inconsistent privilege.";s:5:"flags";a:0:{}}s:28:"delete_privilege_alien_in_db";a:5:{s:8:"filename";s:27:"sources/database_repair.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:14:"privilege_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"Privilege name";s:11:"phpdoc_name";s:14:"privilege_name";}}s:4:"name";s:28:"delete_privilege_alien_in_db";s:11:"description";s:25:"Delete missing privilege.";s:5:"flags";a:0:{}}s:23:"db_type_to_composr_type";a:6:{s:8:"filename";s:27:"sources/database_repair.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:10:"field_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:10:"Field name";s:11:"phpdoc_name";s:10:"field_name";}i:1;a:5:{s:4:"name";s:8:"type_raw";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:24:"Field type (MySQL-style)";s:11:"phpdoc_name";s:8:"type_raw";}i:2;a:5:{s:4:"name";s:17:"is_auto_increment";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:14:"Auto-increment";s:11:"phpdoc_name";s:17:"is_auto_increment";}i:3;a:5:{s:4:"name";s:10:"is_primary";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:11:"Primary key";s:11:"phpdoc_name";s:10:"is_primary";}i:4;a:5:{s:4:"name";s:7:"null_ok";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:15:"Null-acceptable";s:11:"phpdoc_name";s:7:"null_ok";}}s:4:"name";s:23:"db_type_to_composr_type";s:11:"description";s:54:"Convert raw database field type to Composr field type.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:26:"Field type (Composr-style)";}}s:15:"add_fixup_query";a:5:{s:8:"filename";s:27:"sources/database_repair.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"query";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:5:"Query";s:11:"phpdoc_name";s:5:"query";}}s:4:"name";s:15:"add_fixup_query";s:11:"description";s:52:"Add query to list of ones that might be run by user.";s:5:"flags";a:0:{}}}s:4:"name";s:14:"DatabaseRepair";s:7:"comment";b:1;}s:12:"DecisionTree";a:3:{s:9:"functions";a:6:{s:11:"__construct";a:5:{s:8:"filename";s:25:"sources/decision_tree.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:13:"decision_tree";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:36:"Decision tree structure to work from";s:11:"phpdoc_name";s:13:"decision_tree";}i:1;a:7:{s:4:"name";s:14:"default_screen";s:7:"default";s:5:"start";s:11:"default_raw";s:7:"'start'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:40:"Name of the default screen to start from";s:11:"phpdoc_name";s:14:"default_screen";}}s:4:"name";s:11:"__construct";s:11:"description";s:31:"Create a decision tree handler.";s:5:"flags";a:0:{}}s:3:"run";a:6:{s:8:"filename";s:25:"sources/decision_tree.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"recurse";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:72:"Whether we are running recursively, after just processing a prior result";s:11:"phpdoc_name";s:7:"recurse";}}s:4:"name";s:3:"run";s:11:"description";s:80:"Start the decision tree process, returning Tempcode for the screen currently on.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:13:"Screen output";}}s:9:"build_url";a:6:{s:8:"filename";s:25:"sources/decision_tree.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:15:"target_position";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"Tree position to go to";s:11:"phpdoc_name";s:15:"target_position";}}s:4:"name";s:9:"build_url";s:11:"description";s:53:"Build out a URL to a particular decision tree screen.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:3:"URL";}}s:6:"render";a:6:{s:8:"filename";s:25:"sources/decision_tree.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"tree_position";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"Tree position at";s:11:"phpdoc_name";s:13:"tree_position";}}s:4:"name";s:6:"render";s:11:"description";s:32:"Render out decision tree screen.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:13:"Screen output";}}s:26:"get_question_field_details";a:6:{s:8:"filename";s:25:"sources/decision_tree.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:13:"question_name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:19:"Question field name";s:11:"phpdoc_name";s:13:"question_name";}i:1;a:5:{s:4:"name";s:16:"question_details";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:30:"Map of details of the question";s:11:"phpdoc_name";s:16:"question_details";}i:2;a:5:{s:4:"name";s:1:"i";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:27:"Question number in sequence";s:11:"phpdoc_name";s:1:"i";}}s:4:"name";s:26:"get_question_field_details";s:11:"description";s:26:"Get details of a question.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:75:"Tuple of field details: hook object, field details map, default field value";}}s:13:"process_input";a:6:{s:8:"filename";s:25:"sources/decision_tree.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"tree_position";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:25:"Tree position coming from";s:11:"phpdoc_name";s:13:"tree_position";}}s:4:"name";s:13:"process_input";s:11:"description";s:105:"Process a step within the decision tree, making decisions and substitions based on the past step's input.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:38:"Tree position going to or Tempcode URL";}}}s:4:"name";s:12:"DecisionTree";s:7:"comment";b:1;}s:12:"CMSException";a:3:{s:9:"functions";a:1:{s:11:"__construct";a:5:{s:8:"filename";s:19:"sources/failure.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"msg";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:71:"Error message (Tempcode containing HTML, or string containing non-HTML)";s:11:"phpdoc_name";s:3:"msg";}}s:4:"name";s:11:"__construct";s:11:"description";s:12:"Constructor.";s:5:"flags";a:0:{}}}s:4:"name";s:12:"CMSException";s:7:"comment";b:1;}s:16:"Forum_driver_aef";a:3:{s:9:"functions";a:74:{s:8:"check_db";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:0:{}s:4:"name";s:8:"check_db";s:11:"description";s:54:"Check the connected DB is valid for this forum driver.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:19:"Whether it is valid";}}s:15:"get_top_posters";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"limit";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:47:"The limit to the number of top posters to fetch";s:11:"phpdoc_name";s:5:"limit";}}s:4:"name";s:15:"get_top_posters";s:11:"description";s:62:"Get the rows for the top given number of posters on the forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:57:"The rows for the given number of top posters in the forum";}}s:14:"forum_get_lang";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:45:"The member who's language needs to be fetched";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:14:"forum_get_lang";s:11:"description";s:135:"Attempt to to find the member's language from their forum profile. It converts between language-identifiers using a map (lang/map.ini).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:14:"?LANGUAGE_NAME";s:11:"description";s:37:"The member's language (null: unknown)";}}s:20:"is_cookie_login_name";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"is_cookie_login_name";s:11:"description";s:74:"Find if the login cookie contains the login name instead of the member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:61:"Whether the login cookie contains a login name or a member ID";}}s:9:"is_hashed";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"is_hashed";s:11:"description";s:35:"Find if login cookie is md5-hashed.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether the login cookie is md5-hashed";}}s:12:"get_guest_id";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"get_guest_id";s:11:"description";s:45:"Find the member ID of the forum guest member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"MEMBER";s:11:"description";s:39:"The member ID of the forum guest member";}}s:25:"get_drivered_table_prefix";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"get_drivered_table_prefix";s:11:"description";s:46:"Get the forums' table prefix for the database.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:31:"The forum database table prefix";}}s:27:"install_create_custom_field";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:32:"The name of the new custom field";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:6:"length";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:34:"The length of the new custom field";s:11:"phpdoc_name";s:6:"length";}}s:4:"name";s:27:"install_create_custom_field";s:11:"description";s:145:"Add the specified custom field to the forum (some forums implemented this using proper custom profile fields, others through adding a new field).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether the custom field was created successfully";}}s:17:"install_specifics";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"install_specifics";s:11:"description";s:435:"Get an array of attributes to take in from the installer. Almost all forums require a table prefix, which the requirement there-of is defined through this function.The attributes have 4 values in an array- name, the name of the attribute for _config.php- default, the default value (perhaps obtained through autodetection from forum config)- description, a textual description of the attributes- title, a textual title of the attribute";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:28:"The attributes for the forum";}}s:22:"install_test_load_from";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:27:"The path in which to search";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:22:"install_test_load_from";s:11:"description";s:44:"Searches for forum auto-config at this path.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:44:"Whether the forum auto-config could be found";}}s:28:"install_get_path_search_list";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:0:{}s:4:"name";s:28:"install_get_path_search_list";s:11:"description";s:46:"Get an array of paths to search for config at.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:49:"The paths in which to search for the forum config";}}s:20:"get_emoticon_chooser";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:10:"field_name";s:7:"default";s:4:"post";s:11:"default_raw";s:6:"'post'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:53:"The ID of the form field the emoticon chooser adds to";s:11:"phpdoc_name";s:10:"field_name";}}s:4:"name";s:20:"get_emoticon_chooser";s:11:"description";s:33:"Get an emoticon chooser template.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:29:"The emoticon chooser template";}}s:9:"pin_topic";a:5:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:12:"The topic ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:3:"pin";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"True: pin it, False: unpin it";s:11:"phpdoc_name";s:3:"pin";}}s:4:"name";s:9:"pin_topic";s:11:"description";s:12:"Pin a topic.";s:5:"flags";a:0:{}}s:16:"set_custom_field";a:5:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:77:"The field name (e.g. "firstname" for the CPF with a title of "cms_firstname")";s:11:"phpdoc_name";s:5:"field";}i:2;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:9:"The value";s:11:"phpdoc_name";s:5:"value";}}s:4:"name";s:16:"set_custom_field";s:11:"description";s:110:"Set a custom profile field's value, if the custom field exists. Only works on specially-named (titled) fields.";s:5:"flags";a:0:{}}s:17:"get_custom_fields";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:17:"get_custom_fields";s:11:"description";s:62:"Get custom profile fields values for all 'cms_' prefixed keys.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:71:"A map of the custom profile fields, key_suffix=>value (null: no fields)";}}s:8:"get_mrow";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:15:"The member name";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:8:"get_mrow";s:11:"description";s:50:"Get a member row for the member of the given name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:33:"The profile-row (null: not found)";}}s:10:"mrow_group";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"r";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:10:"mrow_group";s:11:"description";s:54:"From a member row, get the member's primary usergroup.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"GROUP";s:11:"description";s:30:"The member's primary usergroup";}}s:7:"mrow_id";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"r";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:7:"mrow_id";s:11:"description";s:46:"From a member row, get the member's member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";}}s:14:"mrow_lastvisit";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"r";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:14:"mrow_lastvisit";s:11:"description";s:52:"From a member row, get the member's last visit date.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:4:"TIME";s:11:"description";s:19:"The last visit date";}}s:13:"mrow_username";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"r";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:13:"mrow_username";s:11:"description";s:41:"From a member row, get the member's name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:15:"The member name";}}s:10:"mrow_email";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"r";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:10:"mrow_email";s:11:"description";s:51:"From a member row, get the member's e-mail address.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:25:"The member e-mail address";}}s:15:"member_home_url";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:15:"member_home_url";s:11:"description";s:57:"Get a URL to the specified member's home (control panel).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:27:"The URL to the members home";}}s:20:"get_member_photo_url";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:20:"get_member_photo_url";s:11:"description";s:56:"Get the photo thumbnail URL for the specified member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:21:"The URL (blank: none)";}}s:21:"get_member_avatar_url";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:21:"get_member_avatar_url";s:11:"description";s:47:"Get the avatar URL for the specified member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:21:"The URL (blank: none)";}}s:19:"_member_profile_url";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:19:"_member_profile_url";s:11:"description";s:44:"Get a URL to the specified member's profile.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:29:"The URL to the member profile";}}s:9:"_join_url";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"_join_url";s:11:"description";s:74:"Get a URL to the registration page (for people to create member accounts).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:32:"The URL to the registration page";}}s:17:"_users_online_url";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"_users_online_url";s:11:"description";s:37:"Get a URL to the members-online page.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:34:"The URL to the members-online page";}}s:14:"_member_pm_url";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:14:"_member_pm_url";s:11:"description";s:65:"Get a URL to send a private/personal message to the given member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:44:"The URL to the private/personal message page";}}s:10:"_forum_url";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:12:"The forum ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:10:"_forum_url";s:11:"description";s:33:"Get a URL to the specified forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:30:"The URL to the specified forum";}}s:18:"forum_id_from_name";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:10:"forum_name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:14:"The forum name";s:11:"phpdoc_name";s:10:"forum_name";}}s:4:"name";s:18:"forum_id_from_name";s:11:"description";s:35:"Get the forum ID from a forum name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?integer";s:11:"description";s:30:"The forum ID (null: not found)";}}s:9:"_phpbb_ip";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"ip";s:3:"ref";b:0;s:4:"type";s:2:"IP";s:11:"description";s:21:"The normal IP address";s:11:"phpdoc_name";s:2:"ip";}}s:4:"name";s:9:"_phpbb_ip";s:11:"description";s:59:"Convert an IP address into phpBB hexadecimal string format.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:20:"The phpBB IP address";}}s:12:"_un_phpbb_ip";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"ip";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:20:"The phpBB IP address";s:11:"phpdoc_name";s:2:"ip";}}s:4:"name";s:12:"_un_phpbb_ip";s:11:"description";s:59:"Convert an IP address from phpBB hexadecimal string format.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:2:"IP";s:11:"description";s:21:"The normal IP address";}}s:21:"make_post_forum_topic";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:16:{i:0;a:5:{s:4:"name";s:10:"forum_name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:14:"The forum name";s:11:"phpdoc_name";s:10:"forum_name";}i:1;a:5:{s:4:"name";s:16:"topic_identifier";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:58:"The topic identifier (usually _)";s:11:"phpdoc_name";s:16:"topic_identifier";}i:2;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}i:3;a:5:{s:4:"name";s:10:"post_title";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:14:"The post title";s:11:"phpdoc_name";s:10:"post_title";}i:4;a:5:{s:4:"name";s:5:"_post";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:34:"The post content in Comcode format";s:11:"phpdoc_name";s:5:"_post";}i:5;a:5:{s:4:"name";s:13:"content_title";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:77:"The topic title; must be same as content title if this is for a comment topic";s:11:"phpdoc_name";s:13:"content_title";}i:6;a:5:{s:4:"name";s:37:"topic_identifier_encapsulation_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:204:"This is put together with the topic identifier to make a more-human-readable topic title or topic description (hopefully the latter and a $content_title title, but only if the forum supports descriptions)";s:11:"phpdoc_name";s:37:"topic_identifier_encapsulation_prefix";}i:7;a:7:{s:4:"name";s:11:"content_url";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?URLPATH";s:11:"description";s:50:"URL to the content (null: do not make spacer post)";s:11:"phpdoc_name";s:11:"content_url";}i:8;a:7:{s:4:"name";s:4:"time";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:5:"?TIME";s:11:"description";s:38:"The post time (null: use current time)";s:11:"phpdoc_name";s:4:"time";}i:9;a:7:{s:4:"name";s:2:"ip";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:3:"?IP";s:11:"description";s:58:"The post IP address (null: use current members IP address)";s:11:"phpdoc_name";s:2:"ip";}i:10;a:7:{s:4:"name";s:9:"validated";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:146:"Whether the post is validated (null: unknown, find whether it needs to be marked unvalidated initially). This only works with the Conversr driver.";s:11:"phpdoc_name";s:9:"validated";}i:11;a:7:{s:4:"name";s:15:"topic_validated";s:7:"default";i:1;s:11:"default_raw";s:1:"1";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:147:"Whether the topic is validated (null: unknown, find whether it needs to be marked unvalidated initially). This only works with the Conversr driver.";s:11:"phpdoc_name";s:15:"topic_validated";}i:12;a:7:{s:4:"name";s:16:"skip_post_checks";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether to skip post checks";s:11:"phpdoc_name";s:16:"skip_post_checks";}i:13;a:7:{s:4:"name";s:20:"poster_name_if_guest";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:22:"The name of the poster";s:11:"phpdoc_name";s:20:"poster_name_if_guest";}i:14;a:7:{s:4:"name";s:9:"parent_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:39:"ID of post being replied to (null: N/A)";s:11:"phpdoc_name";s:9:"parent_id";}i:15;a:7:{s:4:"name";s:10:"staff_only";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:42:"Whether the reply is only visible to staff";s:11:"phpdoc_name";s:10:"staff_only";}}s:4:"name";s:21:"make_post_forum_topic";s:11:"description";s:466:"Makes a post in the specified forum, in the specified topic according to the given specifications. If the topic doesn't exist, it is created along with a spacer-post.Spacer posts exist in order to allow staff to delete the first true post in a topic. Without spacers, this would not be possible with most forum systems. They also serve to provide meta information on the topic that cannot be encoded in the title (such as a link to the content being commented upon).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:63:"Topic ID (may be null), and whether a hidden post has been made";}}s:21:"get_forum_topic_posts";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:8:"topic_id";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:12:"The topic ID";s:11:"phpdoc_name";s:8:"topic_id";}i:1;a:5:{s:4:"name";s:5:"count";s:3:"ref";b:1;s:4:"type";s:7:"integer";s:11:"description";s:52:"The comment count will be returned here by reference";s:11:"phpdoc_name";s:5:"count";}i:2;a:7:{s:4:"name";s:3:"max";s:7:"default";i:100;s:11:"default_raw";s:3:"100";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:28:"Maximum comments to returned";s:11:"phpdoc_name";s:3:"max";}i:3;a:7:{s:4:"name";s:5:"start";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:19:"Comment to start at";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:9:"mark_read";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:62:"Whether to mark the topic read (ignored for this forum driver)";s:11:"phpdoc_name";s:9:"mark_read";}i:5;a:7:{s:4:"name";s:7:"reverse";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:26:"Whether to show in reverse";s:11:"phpdoc_name";s:7:"reverse";}}s:4:"name";s:21:"get_forum_topic_posts";s:11:"description";s:54:"Get an array of maps for the topic in the given forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:106:"The array of maps (Each map is: title, message, member, date) (-1 for no such forum, -2 for no such topic)";}}s:9:"topic_url";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:12:"The topic ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:5:"forum";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"The forum ID";s:11:"phpdoc_name";s:5:"forum";}}s:4:"name";s:9:"topic_url";s:11:"description";s:133:"Get a URL to the specified topic ID. Most forums don't require the second parameter, but some do, so it is required in the interface.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:20:"The URL to the topic";}}s:8:"post_url";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:11:"The post ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:5:"forum";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"The forum ID";s:11:"phpdoc_name";s:5:"forum";}}s:4:"name";s:8:"post_url";s:11:"description";s:35:"Get a URL to the specified post ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:19:"The URL to the post";}}s:34:"find_topic_id_for_topic_identifier";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"forum";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:19:"The forum name / ID";s:11:"phpdoc_name";s:5:"forum";}i:1;a:5:{s:4:"name";s:16:"topic_identifier";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:20:"The topic identifier";s:11:"phpdoc_name";s:16:"topic_identifier";}}s:4:"name";s:34:"find_topic_id_for_topic_identifier";s:11:"description";s:157:"Get the topic ID from a topic identifier in the specified forum. It is used by comment topics, which means that the unique-topic-name assumption holds valid.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?integer";s:11:"description";s:30:"The topic ID (null: not found)";}}s:17:"show_forum_topics";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:39:"The forum name or an array of forum IDs";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:5:"limit";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:9:"The limit";s:11:"phpdoc_name";s:5:"limit";}i:2;a:5:{s:4:"name";s:5:"start";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:18:"The start position";s:11:"phpdoc_name";s:5:"start";}i:3;a:5:{s:4:"name";s:8:"max_rows";s:3:"ref";b:1;s:4:"type";s:7:"integer";s:11:"description";s:54:"The total rows (not a parameter: returns by reference)";s:11:"phpdoc_name";s:8:"max_rows";}i:4;a:7:{s:4:"name";s:18:"filter_topic_title";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:22:"The topic title filter";s:11:"phpdoc_name";s:18:"filter_topic_title";}i:5;a:7:{s:4:"name";s:16:"show_first_posts";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether to show the first posts";s:11:"phpdoc_name";s:16:"show_first_posts";}i:6;a:8:{s:4:"name";s:8:"date_key";s:7:"default";s:8:"lasttime";s:11:"default_raw";s:10:"'lasttime'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"The date key to sort by";s:11:"phpdoc_name";s:8:"date_key";s:3:"set";s:18:"lasttime firsttime";}i:7;a:7:{s:4:"name";s:3:"hot";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether to limit to hot topics";s:11:"phpdoc_name";s:3:"hot";}i:8;a:7:{s:4:"name";s:24:"filter_topic_description";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:28:"The topic description filter";s:11:"phpdoc_name";s:24:"filter_topic_description";}}s:4:"name";s:17:"show_forum_topics";s:11:"description";s:405:"Get an array of topics in the given forum. Each topic is an array with the following attributes:- id, the topic ID- title, the topic title- lastusername, the username of the last poster- lasttime, the timestamp of the last reply- closed, a Boolean for whether the topic is currently closed or not- firsttitle, the title of the first post- firstpost, the first post (only set if $show_first_posts was true)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:33:"The array of topics (null: error)";}}s:18:"member_group_query";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:6:"groups";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:19:"The array of groups";s:11:"phpdoc_name";s:6:"groups";}i:1;a:7:{s:4:"name";s:3:"max";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:170:"Return up to this many entries for primary members and this many entries for secondary members (null: no limit, only use no limit if querying very restricted usergroups!)";s:11:"phpdoc_name";s:3:"max";}i:2;a:7:{s:4:"name";s:5:"start";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:80:"Return primary members after this offset and secondary members after this offset";s:11:"phpdoc_name";s:5:"start";}}s:4:"name";s:18:"member_group_query";s:11:"description";s:77:"Get an array of members who are in at least one of the given array of groups.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:39:"The array of members (null: no members)";}}s:19:"get_previous_member";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:26:"The member ID to decrement";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:19:"get_previous_member";s:11:"description";s:53:"This is the opposite of the get_next_member function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?MEMBER";s:11:"description";s:49:"The previous member ID (null: no previous member)";}}s:15:"get_next_member";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:26:"The member ID to increment";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:15:"get_next_member";s:11:"description";s:146:"Get the member ID of the next member after the given one, or null.It cannot be assumed there are no gaps in member IDs, as members may be deleted.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?MEMBER";s:11:"description";s:41:"The next member ID (null: no next member)";}}s:8:"probe_ip";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"ip";s:3:"ref";b:0;s:4:"type";s:2:"IP";s:11:"description";s:14:"The IP address";s:11:"phpdoc_name";s:2:"ip";}}s:4:"name";s:8:"probe_ip";s:11:"description";s:46:"Try to find a member with the given IP address";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"The distinct rows found";}}s:13:"_get_username";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:13:"_get_username";s:11:"description";s:152:"Get the name relating to the specified member ID.If this returns null, then the member has been deleted. Always take potential null output into account.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:38:"The member name (null: member deleted)";}}s:25:"_get_member_email_address";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:25:"_get_member_email_address";s:11:"description";s:51:"Get the e-mail address for the specified member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:18:"The e-mail address";}}s:24:"get_member_email_allowed";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:24:"get_member_email_allowed";s:11:"description";s:49:"Find if this member may have e-mails sent to them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:48:"Whether the member may have e-mails sent to them";}}s:25:"get_member_join_timestamp";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:25:"get_member_join_timestamp";s:11:"description";s:42:"Get the timestamp of a member's join date.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:4:"TIME";s:11:"description";s:13:"The timestamp";}}s:20:"get_matching_members";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:7:"pattern";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:11:"The pattern";s:11:"phpdoc_name";s:7:"pattern";}i:1;a:7:{s:4:"name";s:5:"limit";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:76:"Maximum number to return (limits to the most recent active) (null: no limit)";s:11:"phpdoc_name";s:5:"limit";}}s:4:"name";s:20:"get_matching_members";s:11:"description";s:64:"Find all members with a name matching the given SQL LIKE string.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:47:"The array of matched members (null: none found)";}}s:14:"get_post_count";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:14:"get_post_count";s:11:"description";s:34:"Get the given member's post count.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:14:"The post count";}}s:15:"get_topic_count";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:15:"get_topic_count";s:11:"description";s:35:"Get the given member's topic count.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"The topic count";}}s:9:"is_banned";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:9:"is_banned";s:11:"description";s:42:"Find out if the given member ID is banned.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:28:"Whether the member is banned";}}s:11:"get_emo_dir";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_emo_dir";s:11:"description";s:35:"Find the base URL to the emoticons.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:12:"The base URL";}}s:14:"find_emoticons";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"find_emoticons";s:11:"description";s:162:"Get a map between emoticon codes and templates representing the HTML-image-code for this emoticon. The emoticons presented of course depend on the forum involved.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:7:"The map";}}s:13:"get_skin_list";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_skin_list";s:11:"description";s:44:"Find a list of all forum skins (aka themes).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"The list of skins";}}s:10:"_get_theme";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:20:"skip_member_specific";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:39:"Whether to avoid member-specific lookup";s:11:"phpdoc_name";s:20:"skip_member_specific";}}s:4:"name";s:10:"_get_theme";s:11:"description";s:395:"Try to find the theme that the logged-in/guest member is using, and map it to a Composr theme.The themes/map.ini file functions to provide this mapping between forum themes, and Composr themes, and has a slightly different meaning for different forum drivers. For example, some drivers map the forum themes theme directory to the Composr theme name, while others made the humanly readeable name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:9:"The theme";}}s:9:"_is_staff";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:9:"_is_staff";s:11:"description";s:58:"Find if the specified member ID is marked as staff or not.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether the member is staff";}}s:15:"_is_super_admin";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:15:"_is_super_admin";s:11:"description";s:66:"Find if the specified member ID is marked as a super admin or not.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:35:"Whether the member is a super admin";}}s:21:"_disable_staff_filter";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"_disable_staff_filter";s:11:"description";s:208:"If we can't get a list of admins via a usergroup query, we have to disable the staff filter - else the staff filtering can cause disaster at the point of being turned on (because it can't automatically sync).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:35:"Whether to disable the staff filter";}}s:20:"get_num_users_forums";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"get_num_users_forums";s:11:"description";s:57:"Get the number of members currently online on the forums.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:21:"The number of members";}}s:11:"get_members";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_members";s:11:"description";s:50:"Get the number of members registered on the forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:21:"The number of members";}}s:10:"get_topics";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"get_topics";s:11:"description";s:44:"Get the total topics ever made on the forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:20:"The number of topics";}}s:19:"get_num_forum_posts";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"get_num_forum_posts";s:11:"description";s:43:"Get the total posts ever made on the forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:19:"The number of posts";}}s:24:"_get_num_new_forum_posts";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"_get_num_new_forum_posts";s:11:"description";s:34:"Get the number of new forum posts.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:19:"The number of posts";}}s:24:"get_member_from_username";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:15:"The member name";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:24:"get_member_from_username";s:11:"description";s:49:"Get a member ID from the given member's username.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";}}s:23:"_get_super_admin_groups";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"_get_super_admin_groups";s:11:"description";s:32:"Get the IDs of the admin groups.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:19:"The admin group IDs";}}s:21:"_get_moderator_groups";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"_get_moderator_groups";s:11:"description";s:203:"Get the IDs of the moderator groups.It should not be assumed that a member only has one group - this depends upon the forum the driver works for. It also does not take the staff site filter into account.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"The moderator group IDs";}}s:19:"_get_usergroup_list";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"_get_usergroup_list";s:11:"description";s:29:"Get the forum usergroup list.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:18:"The usergroup list";}}s:19:"_get_members_groups";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:19:"_get_members_groups";s:11:"description";s:60:"Get the forum usergroup relating to the specified member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:29:"The array of forum usergroups";}}s:15:"generateRandStr";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"length";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:34:"The length of the generated string";s:11:"phpdoc_name";s:6:"length";}}s:4:"name";s:15:"generateRandStr";s:11:"description";s:24:"generates random strings";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:20:"The generated string";}}s:19:"forum_create_cookie";a:5:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:27:"The username (null: lookup)";s:11:"phpdoc_name";s:4:"name";}i:2;a:5:{s:4:"name";s:8:"password";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"The password";s:11:"phpdoc_name";s:8:"password";}}s:4:"name";s:19:"forum_create_cookie";s:11:"description";s:29:"Create a member login cookie.";s:5:"flags";a:0:{}}s:9:"forum_md5";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:6:"string";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:19:"The inputted string";s:11:"phpdoc_name";s:6:"string";}i:1;a:7:{s:4:"name";s:6:"member";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:12:"The username";s:11:"phpdoc_name";s:6:"member";}i:2;a:7:{s:4:"name";s:4:"salt";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:8:"The salt";s:11:"phpdoc_name";s:4:"salt";}}s:4:"name";s:9:"forum_md5";s:11:"description";s:29:"Get a custom md5 for a string";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:17:"The md5-ed string";}}s:21:"forum_authorise_login";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"username";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:104:"The member username (null: don't use this in the authentication - but look it up using the ID if needed)";s:11:"phpdoc_name";s:8:"username";}i:1;a:5:{s:4:"name";s:6:"userid";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"userid";}i:2;a:5:{s:4:"name";s:15:"password_hashed";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:23:"The md5-hashed password";s:11:"phpdoc_name";s:15:"password_hashed";}i:3;a:5:{s:4:"name";s:12:"password_raw";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:16:"The raw password";s:11:"phpdoc_name";s:12:"password_raw";}i:4;a:7:{s:4:"name";s:12:"cookie_login";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether this is a cookie login";s:11:"phpdoc_name";s:12:"cookie_login";}}s:4:"name";s:21:"forum_authorise_login";s:11:"description";s:294:"Find if the given member ID and password is valid. If username is null, then the member ID is used instead.All authorisation, cookies, and form-logins, are passed through this function.Some forums do cookie logins differently, so a Boolean is passed in to indicate whether it is a cookie login.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:80:"A map of 'id' and 'error'. If 'id' is null, an error occurred and 'error' is set";}}s:13:"get_member_ip";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:13:"get_member_ip";s:11:"description";s:49:"Get a first known IP address of the given member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:2:"IP";s:11:"description";s:14:"The IP address";}}s:14:"get_member_row";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:14:"get_member_row";s:11:"description";s:42:"Gets a whole member row from the database.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:37:"The member row (null: no such member)";}}s:20:"get_member_row_field";a:6:{s:8:"filename";s:21:"sources/forum/aef.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:20:"The field identifier";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:20:"get_member_row_field";s:11:"description";s:53:"Gets a named field of a member row from the database.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:9:"The field";}}}s:4:"name";s:16:"Forum_driver_aef";s:7:"comment";b:1;}s:16:"Forum_driver_cns";a:3:{s:9:"functions";a:75:{s:22:"forum_layer_initialise";a:5:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"forum_layer_initialise";s:11:"description";s:203:"Initialise LDAP. To see if LDAP is running we check LDAP_CONNECTION for null. ldap_is_enabled is not good enough - we don't want Composr to bomb out under faulty LDAP settings, hence making it unfixable.";s:5:"flags";a:0:{}}s:15:"get_top_posters";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"limit";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:47:"The limit to the number of top posters to fetch";s:11:"phpdoc_name";s:5:"limit";}}s:4:"name";s:15:"get_top_posters";s:11:"description";s:62:"Get the rows for the top given number of posters on the forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:57:"The rows for the given number of top posters in the forum";}}s:25:"get_drivered_table_prefix";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"get_drivered_table_prefix";s:11:"description";s:46:"Get the forums' table prefix for the database.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:31:"The forum database table prefix";}}s:14:"forum_get_lang";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:45:"The member who's language needs to be fetched";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:14:"forum_get_lang";s:11:"description";s:135:"Attempt to to find the member's language from their forum profile. It converts between language-identifiers using a map (lang/map.ini).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:14:"?LANGUAGE_NAME";s:11:"description";s:37:"The member's language (null: unknown)";}}s:9:"is_hashed";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"is_hashed";s:11:"description";s:35:"Find if login cookie is md5-hashed.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether the login cookie is md5-hashed";}}s:20:"is_cookie_login_name";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"is_cookie_login_name";s:11:"description";s:74:"Find if the login cookie contains the login name instead of the member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:61:"Whether the login cookie contains a login name or a member ID";}}s:12:"get_guest_id";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"get_guest_id";s:11:"description";s:45:"Find the member ID of the forum guest member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"MEMBER";s:11:"description";s:39:"The member ID of the forum guest member";}}s:28:"_install_delete_custom_field";a:5:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:32:"The name of the new custom field";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:28:"_install_delete_custom_field";s:11:"description";s:145:"Add the specified custom field to the forum (some forums implemented this using proper custom profile fields, others through adding a new field).";s:5:"flags";a:0:{}}s:27:"install_create_custom_field";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:32:"The name of the new custom field";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:6:"length";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:77:"The length of the new custom field (ignored for Conversr, $type used instead)";s:11:"phpdoc_name";s:6:"length";}i:2;a:7:{s:4:"name";s:6:"locked";s:7:"default";i:1;s:11:"default_raw";s:1:"1";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:27:"Whether the field is locked";s:11:"phpdoc_name";s:6:"locked";}i:3;a:7:{s:4:"name";s:8:"viewable";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:32:"Whether the field is for viewing";s:11:"phpdoc_name";s:8:"viewable";}i:4;a:7:{s:4:"name";s:8:"settable";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:32:"Whether the field is for setting";s:11:"phpdoc_name";s:8:"settable";}i:5;a:7:{s:4:"name";s:8:"required";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:29:"Whether the field is required";s:11:"phpdoc_name";s:8:"required";}i:6;a:7:{s:4:"name";s:11:"description";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:11:"Description";s:11:"phpdoc_name";s:11:"description";}i:7;a:7:{s:4:"name";s:4:"type";s:7:"default";s:9:"long_text";s:11:"default_raw";s:11:"'long_text'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The field type";s:11:"phpdoc_name";s:4:"type";}i:8;a:7:{s:4:"name";s:9:"encrypted";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:30:"Whether the field is encrypted";s:11:"phpdoc_name";s:9:"encrypted";}i:9;a:7:{s:4:"name";s:7:"default";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:51:"Default field value (null: standard for field type)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:27:"install_create_custom_field";s:11:"description";s:145:"Add the specified custom field to the forum (some forums implemented this using proper custom profile fields, others through adding a new field).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether the custom field was created successfully";}}s:17:"install_specifics";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"install_specifics";s:11:"description";s:435:"Get an array of attributes to take in from the installer. Almost all forums require a table prefix, which the requirement there-of is defined through this function.The attributes have 4 values in an array- name, the name of the attribute for _config.php- default, the default value (perhaps obtained through autodetection from forum config)- description, a textual description of the attributes- title, a textual title of the attribute";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:28:"The attributes for the forum";}}s:22:"install_test_load_from";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:27:"The path in which to search";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:22:"install_test_load_from";s:11:"description";s:44:"Searches for forum auto-config at this path.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:44:"Whether the forum auto-config could be found";}}s:28:"install_get_path_search_list";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:0:{}s:4:"name";s:28:"install_get_path_search_list";s:11:"description";s:46:"Get an array of paths to search for config at.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:49:"The paths in which to search for the forum config";}}s:21:"make_post_forum_topic";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:20:{i:0;a:5:{s:4:"name";s:10:"forum_name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:14:"The forum name";s:11:"phpdoc_name";s:10:"forum_name";}i:1;a:5:{s:4:"name";s:16:"topic_identifier";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:58:"The topic identifier (usually _)";s:11:"phpdoc_name";s:16:"topic_identifier";}i:2;a:5:{s:4:"name";s:9:"member_id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}i:3;a:5:{s:4:"name";s:10:"post_title";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:14:"The post title";s:11:"phpdoc_name";s:10:"post_title";}i:4;a:5:{s:4:"name";s:4:"post";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:34:"The post content in Comcode format";s:11:"phpdoc_name";s:4:"post";}i:5;a:5:{s:4:"name";s:13:"content_title";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:77:"The topic title; must be same as content title if this is for a comment topic";s:11:"phpdoc_name";s:13:"content_title";}i:6;a:5:{s:4:"name";s:37:"topic_identifier_encapsulation_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:204:"This is put together with the topic identifier to make a more-human-readable topic title or topic description (hopefully the latter and a $content_title title, but only if the forum supports descriptions)";s:11:"phpdoc_name";s:37:"topic_identifier_encapsulation_prefix";}i:7;a:7:{s:4:"name";s:11:"content_url";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?URLPATH";s:11:"description";s:50:"URL to the content (null: do not make spacer post)";s:11:"phpdoc_name";s:11:"content_url";}i:8;a:7:{s:4:"name";s:4:"time";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:5:"?TIME";s:11:"description";s:38:"The post time (null: use current time)";s:11:"phpdoc_name";s:4:"time";}i:9;a:7:{s:4:"name";s:2:"ip";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:3:"?IP";s:11:"description";s:58:"The post IP address (null: use current members IP address)";s:11:"phpdoc_name";s:2:"ip";}i:10;a:7:{s:4:"name";s:9:"validated";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:146:"Whether the post is validated (null: unknown, find whether it needs to be marked unvalidated initially). This only works with the Conversr driver.";s:11:"phpdoc_name";s:9:"validated";}i:11;a:7:{s:4:"name";s:15:"topic_validated";s:7:"default";i:1;s:11:"default_raw";s:1:"1";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:147:"Whether the topic is validated (null: unknown, find whether it needs to be marked unvalidated initially). This only works with the Conversr driver.";s:11:"phpdoc_name";s:15:"topic_validated";}i:12;a:7:{s:4:"name";s:16:"skip_post_checks";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether to skip post checks";s:11:"phpdoc_name";s:16:"skip_post_checks";}i:13;a:7:{s:4:"name";s:20:"poster_name_if_guest";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:22:"The name of the poster";s:11:"phpdoc_name";s:20:"poster_name_if_guest";}i:14;a:7:{s:4:"name";s:9:"parent_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:39:"ID of post being replied to (null: N/A)";s:11:"phpdoc_name";s:9:"parent_id";}i:15;a:7:{s:4:"name";s:10:"staff_only";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:42:"Whether the reply is only visible to staff";s:11:"phpdoc_name";s:10:"staff_only";}i:16;a:7:{s:4:"name";s:32:"no_notify_for__notification_code";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:74:"DO NOT send notifications to: The notification code (null: no restriction)";s:11:"phpdoc_name";s:32:"no_notify_for__notification_code";}i:17;a:7:{s:4:"name";s:28:"no_notify_for__code_category";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:101:"DO NOT send notifications to: The category within the notification code (null: none / no restriction)";s:11:"phpdoc_name";s:28:"no_notify_for__code_category";}i:18;a:7:{s:4:"name";s:9:"time_post";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:5:"?TIME";s:11:"description";s:38:"The post time (null: use current time)";s:11:"phpdoc_name";s:9:"time_post";}i:19;a:7:{s:4:"name";s:21:"spacer_post_member_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:36:"Owner of comment topic (null: Guest)";s:11:"phpdoc_name";s:21:"spacer_post_member_id";}}s:4:"name";s:21:"make_post_forum_topic";s:11:"description";s:466:"Makes a post in the specified forum, in the specified topic according to the given specifications. If the topic doesn't exist, it is created along with a spacer-post.Spacer posts exist in order to allow staff to delete the first true post in a topic. Without spacers, this would not be possible with most forum systems. They also serve to provide meta information on the topic that cannot be encoded in the title (such as a link to the content being commented upon).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:63:"Topic ID (may be null), and whether a hidden post has been made";}}s:17:"show_forum_topics";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:105:"The forum name or an array of forum IDs (in such an array the KEYS are forum IDs, and the values ignored)";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:5:"limit";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:9:"The limit";s:11:"phpdoc_name";s:5:"limit";}i:2;a:5:{s:4:"name";s:5:"start";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:18:"The start position";s:11:"phpdoc_name";s:5:"start";}i:3;a:5:{s:4:"name";s:8:"max_rows";s:3:"ref";b:1;s:4:"type";s:7:"integer";s:11:"description";s:54:"The total rows (not a parameter: returns by reference)";s:11:"phpdoc_name";s:8:"max_rows";}i:4;a:7:{s:4:"name";s:18:"filter_topic_title";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:22:"The topic title filter";s:11:"phpdoc_name";s:18:"filter_topic_title";}i:5;a:7:{s:4:"name";s:16:"show_first_posts";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether to show the first posts";s:11:"phpdoc_name";s:16:"show_first_posts";}i:6;a:8:{s:4:"name";s:8:"date_key";s:7:"default";s:8:"lasttime";s:11:"default_raw";s:10:"'lasttime'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"The date key to sort by";s:11:"phpdoc_name";s:8:"date_key";s:3:"set";s:18:"lasttime firsttime";}i:7;a:7:{s:4:"name";s:3:"hot";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether to limit to hot topics";s:11:"phpdoc_name";s:3:"hot";}i:8;a:7:{s:4:"name";s:24:"filter_topic_description";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:28:"The topic description filter";s:11:"phpdoc_name";s:24:"filter_topic_description";}i:9;a:7:{s:4:"name";s:9:"open_only";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:17:"Open tickets only";s:11:"phpdoc_name";s:9:"open_only";}}s:4:"name";s:17:"show_forum_topics";s:11:"description";s:405:"Get an array of topics in the given forum. Each topic is an array with the following attributes:- id, the topic ID- title, the topic title- lastusername, the username of the last poster- lasttime, the timestamp of the last reply- closed, a Boolean for whether the topic is currently closed or not- firsttitle, the title of the first post- firstpost, the first post (only set if $show_first_posts was true)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:38:"The array of topics (null: error/none)";}}s:21:"get_forum_topic_posts";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:10:{i:0;a:5:{s:4:"name";s:8:"topic_id";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:12:"The topic ID";s:11:"phpdoc_name";s:8:"topic_id";}i:1;a:5:{s:4:"name";s:5:"count";s:3:"ref";b:1;s:4:"type";s:7:"integer";s:11:"description";s:52:"The comment count will be returned here by reference";s:11:"phpdoc_name";s:5:"count";}i:2;a:7:{s:4:"name";s:3:"max";s:7:"default";i:100;s:11:"default_raw";s:3:"100";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:28:"Maximum comments to returned";s:11:"phpdoc_name";s:3:"max";}i:3;a:7:{s:4:"name";s:5:"start";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:19:"Comment to start at";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:9:"mark_read";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether to mark the topic read";s:11:"phpdoc_name";s:9:"mark_read";}i:5;a:7:{s:4:"name";s:7:"reverse";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:26:"Whether to show in reverse";s:11:"phpdoc_name";s:7:"reverse";}i:6;a:7:{s:4:"name";s:17:"light_if_threaded";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:62:"Whether to only load minimal details if it is a threaded topic";s:11:"phpdoc_name";s:17:"light_if_threaded";}i:7;a:7:{s:4:"name";s:5:"posts";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:42:"List of post IDs to load (null: no filter)";s:11:"phpdoc_name";s:5:"posts";}i:8;a:7:{s:4:"name";s:21:"load_spacer_posts_too";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:28:"Whether to load spacer posts";s:11:"phpdoc_name";s:21:"load_spacer_posts_too";}i:9;a:8:{s:4:"name";s:4:"sort";s:7:"default";s:4:"date";s:11:"default_raw";s:6:"'date'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:68:"Preferred sort order (appropriate will use rating if threaded, other";s:11:"phpdoc_name";s:4:"sort";s:3:"set";s:11:"date rating";}}s:4:"name";s:21:"get_forum_topic_posts";s:11:"description";s:54:"Get an array of maps for the topic in the given forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:106:"The array of maps (Each map is: title, message, member, date) (-1 for no such forum, -2 for no such topic)";}}s:26:"get_post_remaining_details";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"topic_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:25:"Topic the posts come from";s:11:"phpdoc_name";s:8:"topic_id";}i:1;a:5:{s:4:"name";s:8:"post_ids";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:16:"List of post IDs";s:11:"phpdoc_name";s:8:"post_ids";}}s:4:"name";s:26:"get_post_remaining_details";s:11:"description";s:184:"Load extra details for a list of posts. Does not need to return anything if forum driver doesn't support partial post loading (which is only useful for threaded topic partial-display).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"Extra details";}}s:17:"topic_is_threaded";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"topic_id";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:12:"The topic ID";s:11:"phpdoc_name";s:8:"topic_id";}}s:4:"name";s:17:"topic_is_threaded";s:11:"description";s:33:"Find whether a forum is threaded.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:13:"Whether it is";}}s:20:"get_emoticon_chooser";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:10:"field_name";s:7:"default";s:4:"post";s:11:"default_raw";s:6:"'post'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:53:"The ID of the form field the emoticon chooser adds to";s:11:"phpdoc_name";s:10:"field_name";}}s:4:"name";s:20:"get_emoticon_chooser";s:11:"description";s:33:"Get an emoticon chooser template.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:29:"The emoticon chooser template";}}s:9:"pin_topic";a:5:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:12:"The topic ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:3:"pin";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"True: pin it, False: unpin it";s:11:"phpdoc_name";s:3:"pin";}}s:4:"name";s:9:"pin_topic";s:11:"description";s:12:"Pin a topic.";s:5:"flags";a:0:{}}s:11:"get_emo_dir";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_emo_dir";s:11:"description";s:35:"Find the base URL to the emoticons.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:12:"The base URL";}}s:14:"find_emoticons";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:6:"member";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:58:"Only emoticons the given member can see (null: don't care)";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:14:"find_emoticons";s:11:"description";s:162:"Get a map between emoticon codes and templates representing the HTML-image-code for this emoticon. The emoticons presented of course depend on the forum involved.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:7:"The map";}}s:10:"_get_theme";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:20:"skip_member_specific";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:39:"Whether to avoid member-specific lookup";s:11:"phpdoc_name";s:20:"skip_member_specific";}}s:4:"name";s:10:"_get_theme";s:11:"description";s:395:"Try to find the theme that the logged-in/guest member is using, and map it to a Composr theme.The themes/map.ini file functions to provide this mapping between forum themes, and Composr themes, and has a slightly different meaning for different forum drivers. For example, some drivers map the forum themes theme directory to the Composr theme name, while others made the humanly readeable name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:9:"The theme";}}s:16:"set_custom_field";a:5:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:140:"The field name (e.g. "firstname" for the CPF with a title of "cms_firstname") (e.g. "firstname" for the CPF with a title of "cms_firstname")";s:11:"phpdoc_name";s:5:"field";}i:2;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:9:"The value";s:11:"phpdoc_name";s:5:"value";}}s:4:"name";s:16:"set_custom_field";s:11:"description";s:110:"Set a custom profile field's value, if the custom field exists. Only works on specially-named (titled) fields.";s:5:"flags";a:0:{}}s:17:"get_custom_fields";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:17:"get_custom_fields";s:11:"description";s:62:"Get custom profile fields values for all 'cms_' prefixed keys.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:71:"A map of the custom profile fields, key_suffix=>value (null: no fields)";}}s:8:"get_mrow";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:15:"The member name";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:8:"get_mrow";s:11:"description";s:50:"Get a member row for the member of the given name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:38:"The profile-row (null: could not find)";}}s:10:"mrow_group";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"r";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:10:"mrow_group";s:11:"description";s:54:"From a member row, get the member's primary usergroup.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"GROUP";s:11:"description";s:30:"The member's primary usergroup";}}s:7:"mrow_id";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"r";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:7:"mrow_id";s:11:"description";s:46:"From a member row, get the member's member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";}}s:14:"mrow_lastvisit";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"r";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:14:"mrow_lastvisit";s:11:"description";s:52:"From a member row, get the member's last visit date.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:4:"TIME";s:11:"description";s:19:"The last visit date";}}s:13:"mrow_username";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"r";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:13:"mrow_username";s:11:"description";s:41:"From a member row, get the member's name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:15:"The member name";}}s:10:"mrow_email";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"r";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:10:"mrow_email";s:11:"description";s:51:"From a member row, get the member's e-mail address.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:25:"The member e-mail address";}}s:15:"member_home_url";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:13:"tempcode_okay";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:147:"Whether it is okay to return the result using Tempcode (more efficient, and allows keep_* parameters to propagate which you almost certainly want!)";s:11:"phpdoc_name";s:13:"tempcode_okay";}}s:4:"name";s:15:"member_home_url";s:11:"description";s:57:"Get a URL to the specified member's home (control panel).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:27:"The URL to the members home";}}s:19:"_member_profile_url";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:13:"tempcode_okay";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:147:"Whether it is okay to return the result using Tempcode (more efficient, and allows keep_* parameters to propagate which you almost certainly want!)";s:11:"phpdoc_name";s:13:"tempcode_okay";}}s:4:"name";s:19:"_member_profile_url";s:11:"description";s:44:"Get a URL to the specified member's profile.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:29:"The URL to the member profile";}}s:9:"_join_url";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"_join_url";s:11:"description";s:74:"Get a URL to the registration page (for people to create member accounts).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:32:"The URL to the registration page";}}s:17:"_users_online_url";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:13:"tempcode_okay";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:71:"Whether it is okay to return the result using Tempcode (more efficient)";s:11:"phpdoc_name";s:13:"tempcode_okay";}}s:4:"name";s:17:"_users_online_url";s:11:"description";s:37:"Get a URL to the members-online page.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:34:"The URL to the members-online page";}}s:14:"_member_pm_url";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:13:"tempcode_okay";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:71:"Whether it is okay to return the result using Tempcode (more efficient)";s:11:"phpdoc_name";s:13:"tempcode_okay";}}s:4:"name";s:14:"_member_pm_url";s:11:"description";s:65:"Get a URL to send a private/personal message to the given member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:44:"The URL to the private/personal message page";}}s:10:"_forum_url";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:12:"The forum ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:13:"tempcode_okay";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:71:"Whether it is okay to return the result using Tempcode (more efficient)";s:11:"phpdoc_name";s:13:"tempcode_okay";}}s:4:"name";s:10:"_forum_url";s:11:"description";s:33:"Get a URL to the specified forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:30:"The URL to the specified forum";}}s:18:"forum_id_from_name";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:10:"forum_name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:14:"The forum name";s:11:"phpdoc_name";s:10:"forum_name";}}s:4:"name";s:18:"forum_id_from_name";s:11:"description";s:35:"Get the forum ID from a forum name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?integer";s:11:"description";s:30:"The forum ID (null: not found)";}}s:34:"find_topic_id_for_topic_identifier";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:5:"forum";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:19:"The forum name / ID";s:11:"phpdoc_name";s:5:"forum";}i:1;a:5:{s:4:"name";s:16:"topic_identifier";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:20:"The topic identifier";s:11:"phpdoc_name";s:16:"topic_identifier";}i:2;a:7:{s:4:"name";s:37:"topic_identifier_encapsulation_prefix";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?string";s:11:"description";s:253:"This is put together with the topic identifier to make a more-human-readable topic title or topic description (hopefully the latter and a $content_title title, but only if the forum supports descriptions). Set this to improve performance (null: unknown)";s:11:"phpdoc_name";s:37:"topic_identifier_encapsulation_prefix";}}s:4:"name";s:34:"find_topic_id_for_topic_identifier";s:11:"description";s:157:"Get the topic ID from a topic identifier in the specified forum. It is used by comment topics, which means that the unique-topic-name assumption holds valid.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?integer";s:11:"description";s:30:"The topic ID (null: not found)";}}s:9:"topic_url";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:12:"The topic ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:5:"forum";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"The forum ID";s:11:"phpdoc_name";s:5:"forum";}i:2;a:7:{s:4:"name";s:13:"tempcode_okay";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:71:"Whether it is okay to return the result using Tempcode (more efficient)";s:11:"phpdoc_name";s:13:"tempcode_okay";}}s:4:"name";s:9:"topic_url";s:11:"description";s:133:"Get a URL to the specified topic ID. Most forums don't require the second parameter, but some do, so it is required in the interface.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:20:"The URL to the topic";}}s:8:"post_url";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:11:"The post ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:5:"forum";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"The forum ID";s:11:"phpdoc_name";s:5:"forum";}i:2;a:7:{s:4:"name";s:13:"tempcode_okay";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:71:"Whether it is okay to return the result using Tempcode (more efficient)";s:11:"phpdoc_name";s:13:"tempcode_okay";}}s:4:"name";s:8:"post_url";s:11:"description";s:35:"Get a URL to the specified post ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:19:"The URL to the post";}}s:18:"member_group_query";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:6:"groups";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:23:"The array of usergroups";s:11:"phpdoc_name";s:6:"groups";}i:1;a:7:{s:4:"name";s:3:"max";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:170:"Return up to this many entries for primary members and this many entries for secondary members (null: no limit, only use no limit if querying very restricted usergroups!)";s:11:"phpdoc_name";s:3:"max";}i:2;a:7:{s:4:"name";s:5:"start";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:80:"Return primary members after this offset and secondary members after this offset";s:11:"phpdoc_name";s:5:"start";}}s:4:"name";s:18:"member_group_query";s:11:"description";s:81:"Get an array of members who are in at least one of the given array of usergroups.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:59:"The map of members, member ID to details (null: no members)";}}s:19:"get_previous_member";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:26:"The member ID to decrement";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:19:"get_previous_member";s:11:"description";s:53:"This is the opposite of the get_next_member function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?MEMBER";s:11:"description";s:49:"The previous member ID (null: no previous member)";}}s:15:"get_next_member";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:26:"The member ID to increment";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:15:"get_next_member";s:11:"description";s:146:"Get the member ID of the next member after the given one, or null.It cannot be assumed there are no gaps in member IDs, as members may be deleted.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?MEMBER";s:11:"description";s:41:"The next member ID (null: no next member)";}}s:8:"probe_ip";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"ip";s:3:"ref";b:0;s:4:"type";s:2:"IP";s:11:"description";s:14:"The IP address";s:11:"phpdoc_name";s:2:"ip";}}s:4:"name";s:8:"probe_ip";s:11:"description";s:46:"Try to find a member with the given IP address";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"The distinct rows found";}}s:13:"_get_username";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:13:"_get_username";s:11:"description";s:152:"Get the name relating to the specified member ID.If this returns null, then the member has been deleted. Always take potential null output into account.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:38:"The member name (null: member deleted)";}}s:16:"_get_displayname";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"username";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"The username";s:11:"phpdoc_name";s:8:"username";}}s:4:"name";s:16:"_get_displayname";s:11:"description";s:117:"Get the display name of a username.If no display name generator is configured, this will be the same as the username.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:16:"The display name";}}s:25:"_get_member_email_address";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:25:"_get_member_email_address";s:11:"description";s:51:"Get the e-mail address for the specified member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:18:"The e-mail address";}}s:20:"get_member_photo_url";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:20:"get_member_photo_url";s:11:"description";s:56:"Get the photo thumbnail URL for the specified member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:21:"The URL (blank: none)";}}s:21:"get_member_avatar_url";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:21:"get_member_avatar_url";s:11:"description";s:47:"Get the avatar URL for the specified member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:21:"The URL (blank: none)";}}s:24:"get_member_email_allowed";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:24:"get_member_email_allowed";s:11:"description";s:49:"Find if this member may have e-mails sent to them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:48:"Whether the member may have e-mails sent to them";}}s:25:"get_member_join_timestamp";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:25:"get_member_join_timestamp";s:11:"description";s:42:"Get the timestamp of a member's join date.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:4:"TIME";s:11:"description";s:13:"The timestamp";}}s:20:"get_matching_members";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:7:"pattern";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:11:"The pattern";s:11:"phpdoc_name";s:7:"pattern";}i:1;a:7:{s:4:"name";s:5:"limit";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:76:"Maximum number to return (limits to the most recent active) (null: no limit)";s:11:"phpdoc_name";s:5:"limit";}i:2;a:7:{s:4:"name";s:7:"friends";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:62:"Whether to limit to friends of the current member, if possible";s:11:"phpdoc_name";s:7:"friends";}}s:4:"name";s:20:"get_matching_members";s:11:"description";s:64:"Find all members with a name matching the given SQL LIKE string.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:47:"The array of matched members (null: none found)";}}s:14:"get_post_count";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:14:"get_post_count";s:11:"description";s:34:"Get the given member's post count.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:14:"The post count";}}s:15:"get_topic_count";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:15:"get_topic_count";s:11:"description";s:35:"Get the given member's topic count.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"The topic count";}}s:9:"is_banned";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:9:"is_banned";s:11:"description";s:42:"Find out if the given member ID is banned.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:28:"Whether the member is banned";}}s:9:"_is_staff";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:9:"_is_staff";s:11:"description";s:58:"Find if the specified member ID is marked as staff or not.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether the member is staff";}}s:15:"_is_super_admin";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:15:"_is_super_admin";s:11:"description";s:66:"Find if the specified member ID is marked as a super admin or not.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:35:"Whether the member is a super admin";}}s:20:"get_num_users_forums";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"get_num_users_forums";s:11:"description";s:57:"Get the number of members currently online on the forums.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?integer";s:11:"description";s:57:"The number of members (null: the same as the site number)";}}s:11:"get_members";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_members";s:11:"description";s:50:"Get the number of members registered on the forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:21:"The number of members";}}s:10:"get_topics";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"get_topics";s:11:"description";s:44:"Get the total topics ever made on the forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:20:"The number of topics";}}s:19:"get_num_forum_posts";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"get_num_forum_posts";s:11:"description";s:43:"Get the total posts ever made on the forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:19:"The number of posts";}}s:24:"_get_num_new_forum_posts";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"_get_num_new_forum_posts";s:11:"description";s:34:"Get the number of new forum posts.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:19:"The number of posts";}}s:24:"get_member_from_username";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:15:"The member name";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:24:"get_member_from_username";s:11:"description";s:132:"Get a member ID from the given member's username. If there is no match and the input is numeric, it will also try it as a member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?MEMBER";s:11:"description";s:31:"The member ID (null: not found)";}}s:29:"get_member_from_email_address";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"email_address";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:24:"The member email address";s:11:"phpdoc_name";s:13:"email_address";}}s:4:"name";s:29:"get_member_from_email_address";s:11:"description";s:49:"Get a member ID from the given member's username.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?MEMBER";s:11:"description";s:31:"The member ID (null: not found)";}}s:23:"_get_super_admin_groups";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"_get_super_admin_groups";s:11:"description";s:36:"Get the IDs of the admin usergroups.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"The admin usergroup IDs";}}s:21:"_get_moderator_groups";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"_get_moderator_groups";s:11:"description";s:211:"Get the IDs of the moderator usergroups.It should not be assumed that a member only has one usergroup - this depends upon the forum the driver works for. It also does not take the staff site filter into account.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:27:"The moderator usergroup IDs";}}s:19:"_get_usergroup_list";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:6:{i:0;a:7:{s:4:"name";s:11:"hide_hidden";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:48:"Whether to obscure the name of hidden usergroups";s:11:"phpdoc_name";s:11:"hide_hidden";}i:1;a:7:{s:4:"name";s:15:"only_permissive";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:42:"Whether to only grab permissive usergroups";s:11:"phpdoc_name";s:15:"only_permissive";}i:2;a:7:{s:4:"name";s:14:"force_show_all";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:64:"Do not limit things even if there are huge numbers of usergroups";s:11:"phpdoc_name";s:14:"force_show_all";}i:3;a:7:{s:4:"name";s:10:"force_find";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:73:"Usergroups that must be included in the results (null: no extras must be)";s:11:"phpdoc_name";s:10:"force_find";}i:4;a:7:{s:4:"name";s:10:"for_member";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:62:"Always return usergroups of this member (null: current member)";s:11:"phpdoc_name";s:10:"for_member";}i:5;a:7:{s:4:"name";s:11:"skip_hidden";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:44:"Whether to completely skip hidden usergroups";s:11:"phpdoc_name";s:11:"skip_hidden";}}s:4:"name";s:19:"_get_usergroup_list";s:11:"description";s:97:"Get the forum usergroup list. This is useful to enumerate usergroups, or to find usergroup names.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:59:"The usergroup list, a map of usergroup ID to usergroup name";}}s:19:"_get_members_groups";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}i:1;a:7:{s:4:"name";s:11:"skip_secret";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:45:"Whether to skip looking at secret usergroups.";s:11:"phpdoc_name";s:11:"skip_secret";}i:2;a:7:{s:4:"name";s:16:"handle_probation";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether to take probation into account";s:11:"phpdoc_name";s:16:"handle_probation";}}s:4:"name";s:19:"_get_members_groups";s:11:"description";s:60:"Get the forum usergroup relating to the specified member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:29:"The array of forum usergroups";}}s:19:"forum_create_cookie";a:5:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:27:"The username (null: lookup)";s:11:"phpdoc_name";s:4:"name";}i:2;a:5:{s:4:"name";s:8:"password";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"The password";s:11:"phpdoc_name";s:8:"password";}}s:4:"name";s:19:"forum_create_cookie";s:11:"description";s:29:"Create a member login cookie.";s:5:"flags";a:0:{}}s:9:"forum_md5";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"password";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:44:"The data to hash (the password in actuality)";s:11:"phpdoc_name";s:8:"password";}i:1;a:5:{s:4:"name";s:8:"username";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:12:"The username";s:11:"phpdoc_name";s:8:"username";}}s:4:"name";s:9:"forum_md5";s:11:"description";s:43:"The hashing algorithm of this forum driver.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:15:"The hashed data";}}s:21:"forum_authorise_login";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"username";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:104:"The member username (null: don't use this in the authentication - but look it up using the ID if needed)";s:11:"phpdoc_name";s:8:"username";}i:1;a:5:{s:4:"name";s:6:"userid";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:37:"The member ID (null: use member name)";s:11:"phpdoc_name";s:6:"userid";}i:2;a:5:{s:4:"name";s:15:"password_hashed";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:23:"The md5-hashed password";s:11:"phpdoc_name";s:15:"password_hashed";}i:3;a:5:{s:4:"name";s:12:"password_raw";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:16:"The raw password";s:11:"phpdoc_name";s:12:"password_raw";}i:4;a:7:{s:4:"name";s:12:"cookie_login";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:101:"Whether this is a cookie login, determines how the hashed password is treated for the value passed in";s:11:"phpdoc_name";s:12:"cookie_login";}}s:4:"name";s:21:"forum_authorise_login";s:11:"description";s:294:"Find if the given member ID and password is valid. If username is null, then the member ID is used instead.All authorisation, cookies, and form-logins, are passed through this function.Some forums do cookie logins differently, so a Boolean is passed in to indicate whether it is a cookie login.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:80:"A map of 'id' and 'error'. If 'id' is null, an error occurred and 'error' is set";}}s:17:"cns_flood_control";a:5:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:36:"The member ID that just got detected";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:17:"cns_flood_control";s:11:"description";s:72:"Handle flood control for members, and update member last visiting times.";s:5:"flags";a:0:{}}s:13:"get_member_ip";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:13:"get_member_ip";s:11:"description";s:49:"Get a first known IP address of the given member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:2:"IP";s:11:"description";s:14:"The IP address";}}s:14:"get_member_row";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:14:"get_member_row";s:11:"description";s:42:"Gets a whole member row from the database.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:37:"The member row (null: no such member)";}}s:20:"get_member_row_field";a:6:{s:8:"filename";s:21:"sources/forum/cns.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:20:"The field identifier";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:20:"get_member_row_field";s:11:"description";s:53:"Gets a named field of a member row from the database.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:9:"The field";}}}s:4:"name";s:16:"Forum_driver_cns";s:7:"comment";b:1;}s:17:"Forum_driver_ipb1";a:3:{s:9:"functions";a:25:{s:13:"mrow_username";a:6:{s:8:"filename";s:22:"sources/forum/ipb1.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"r";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:13:"mrow_username";s:11:"description";s:41:"From a member row, get the member's name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:15:"The member name";}}s:8:"get_mrow";a:6:{s:8:"filename";s:22:"sources/forum/ipb1.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:15:"The member name";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:8:"get_mrow";s:11:"description";s:50:"Get a member row for the member of the given name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:38:"The profile-row (null: could not find)";}}s:13:"_get_username";a:6:{s:8:"filename";s:22:"sources/forum/ipb1.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:13:"_get_username";s:11:"description";s:152:"Get the name relating to the specified member ID.If this returns null, then the member has been deleted. Always take potential null output into account.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:38:"The member name (null: member deleted)";}}s:20:"get_matching_members";a:6:{s:8:"filename";s:22:"sources/forum/ipb1.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:7:"pattern";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:11:"The pattern";s:11:"phpdoc_name";s:7:"pattern";}i:1;a:7:{s:4:"name";s:5:"limit";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:76:"Maximum number to return (limits to the most recent active) (null: no limit)";s:11:"phpdoc_name";s:5:"limit";}}s:4:"name";s:20:"get_matching_members";s:11:"description";s:64:"Find all members with a name matching the given SQL LIKE string.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:47:"The array of matched members (null: none found)";}}s:24:"get_member_from_username";a:6:{s:8:"filename";s:22:"sources/forum/ipb1.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:15:"The member name";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:24:"get_member_from_username";s:11:"description";s:49:"Get a member ID from the given member's username.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";}}s:27:"install_create_custom_field";a:6:{s:8:"filename";s:22:"sources/forum/ipb1.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:32:"The name of the new custom field";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:6:"length";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:34:"The length of the new custom field";s:11:"phpdoc_name";s:6:"length";}}s:4:"name";s:27:"install_create_custom_field";s:11:"description";s:145:"Add the specified custom field to the forum (some forums implemented this using proper custom profile fields, others through adding a new field).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether the custom field was created successfully";}}s:16:"set_custom_field";a:5:{s:8:"filename";s:22:"sources/forum/ipb1.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:77:"The field name (e.g. "firstname" for the CPF with a title of "cms_firstname")";s:11:"phpdoc_name";s:5:"field";}i:2;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:9:"The value";s:11:"phpdoc_name";s:5:"value";}}s:4:"name";s:16:"set_custom_field";s:11:"description";s:110:"Set a custom profile field's value, if the custom field exists. Only works on specially-named (titled) fields.";s:5:"flags";a:0:{}}s:17:"get_custom_fields";a:6:{s:8:"filename";s:22:"sources/forum/ipb1.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:17:"get_custom_fields";s:11:"description";s:62:"Get custom profile fields values for all 'cms_' prefixed keys.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:71:"A map of the custom profile fields, key_suffix=>value (null: no fields)";}}s:22:"install_test_load_from";a:6:{s:8:"filename";s:22:"sources/forum/ipb1.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:27:"The path in which to search";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:22:"install_test_load_from";s:11:"description";s:44:"Searches for forum auto-config at this path.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:44:"Whether the forum auto-config could be found";}}s:28:"install_get_path_search_list";a:6:{s:8:"filename";s:22:"sources/forum/ipb1.php";s:10:"parameters";a:0:{}s:4:"name";s:28:"install_get_path_search_list";s:11:"description";s:46:"Get an array of paths to search for config at.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:49:"The paths in which to search for the forum config";}}s:21:"get_member_avatar_url";a:6:{s:8:"filename";s:22:"sources/forum/ipb1.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:21:"get_member_avatar_url";s:11:"description";s:47:"Get the avatar URL for the specified member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:21:"The URL (blank: none)";}}s:21:"make_post_forum_topic";a:6:{s:8:"filename";s:22:"sources/forum/ipb1.php";s:10:"parameters";a:16:{i:0;a:5:{s:4:"name";s:10:"forum_name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:14:"The forum name";s:11:"phpdoc_name";s:10:"forum_name";}i:1;a:5:{s:4:"name";s:16:"topic_identifier";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:58:"The topic identifier (usually _)";s:11:"phpdoc_name";s:16:"topic_identifier";}i:2;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}i:3;a:5:{s:4:"name";s:10:"post_title";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:14:"The post title";s:11:"phpdoc_name";s:10:"post_title";}i:4;a:5:{s:4:"name";s:5:"_post";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:34:"The post content in Comcode format";s:11:"phpdoc_name";s:5:"_post";}i:5;a:5:{s:4:"name";s:13:"content_title";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:77:"The topic title; must be same as content title if this is for a comment topic";s:11:"phpdoc_name";s:13:"content_title";}i:6;a:5:{s:4:"name";s:37:"topic_identifier_encapsulation_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:204:"This is put together with the topic identifier to make a more-human-readable topic title or topic description (hopefully the latter and a $content_title title, but only if the forum supports descriptions)";s:11:"phpdoc_name";s:37:"topic_identifier_encapsulation_prefix";}i:7;a:7:{s:4:"name";s:11:"content_url";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?URLPATH";s:11:"description";s:50:"URL to the content (null: do not make spacer post)";s:11:"phpdoc_name";s:11:"content_url";}i:8;a:7:{s:4:"name";s:4:"time";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:5:"?TIME";s:11:"description";s:38:"The post time (null: use current time)";s:11:"phpdoc_name";s:4:"time";}i:9;a:7:{s:4:"name";s:2:"ip";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:3:"?IP";s:11:"description";s:58:"The post IP address (null: use current members IP address)";s:11:"phpdoc_name";s:2:"ip";}i:10;a:7:{s:4:"name";s:9:"validated";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:146:"Whether the post is validated (null: unknown, find whether it needs to be marked unvalidated initially). This only works with the Conversr driver.";s:11:"phpdoc_name";s:9:"validated";}i:11;a:7:{s:4:"name";s:15:"topic_validated";s:7:"default";i:1;s:11:"default_raw";s:1:"1";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:147:"Whether the topic is validated (null: unknown, find whether it needs to be marked unvalidated initially). This only works with the Conversr driver.";s:11:"phpdoc_name";s:15:"topic_validated";}i:12;a:7:{s:4:"name";s:16:"skip_post_checks";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether to skip post checks";s:11:"phpdoc_name";s:16:"skip_post_checks";}i:13;a:7:{s:4:"name";s:20:"poster_name_if_guest";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:22:"The name of the poster";s:11:"phpdoc_name";s:20:"poster_name_if_guest";}i:14;a:7:{s:4:"name";s:9:"parent_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:39:"ID of post being replied to (null: N/A)";s:11:"phpdoc_name";s:9:"parent_id";}i:15;a:7:{s:4:"name";s:10:"staff_only";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:42:"Whether the reply is only visible to staff";s:11:"phpdoc_name";s:10:"staff_only";}}s:4:"name";s:21:"make_post_forum_topic";s:11:"description";s:466:"Makes a post in the specified forum, in the specified topic according to the given specifications. If the topic doesn't exist, it is created along with a spacer-post.Spacer posts exist in order to allow staff to delete the first true post in a topic. Without spacers, this would not be possible with most forum systems. They also serve to provide meta information on the topic that cannot be encoded in the title (such as a link to the content being commented upon).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:63:"Topic ID (may be null), and whether a hidden post has been made";}}s:21:"get_forum_topic_posts";a:6:{s:8:"filename";s:22:"sources/forum/ipb1.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:8:"topic_id";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:12:"The topic ID";s:11:"phpdoc_name";s:8:"topic_id";}i:1;a:5:{s:4:"name";s:5:"count";s:3:"ref";b:1;s:4:"type";s:7:"integer";s:11:"description";s:52:"The comment count will be returned here by reference";s:11:"phpdoc_name";s:5:"count";}i:2;a:7:{s:4:"name";s:3:"max";s:7:"default";i:100;s:11:"default_raw";s:3:"100";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:28:"Maximum comments to returned";s:11:"phpdoc_name";s:3:"max";}i:3;a:7:{s:4:"name";s:5:"start";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:19:"Comment to start at";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:9:"mark_read";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:62:"Whether to mark the topic read (ignored for this forum driver)";s:11:"phpdoc_name";s:9:"mark_read";}i:5;a:7:{s:4:"name";s:7:"reverse";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:26:"Whether to show in reverse";s:11:"phpdoc_name";s:7:"reverse";}}s:4:"name";s:21:"get_forum_topic_posts";s:11:"description";s:54:"Get an array of maps for the topic in the given forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:106:"The array of maps (Each map is: title, message, member, date) (-1 for no such forum, -2 for no such topic)";}}s:17:"show_forum_topics";a:6:{s:8:"filename";s:22:"sources/forum/ipb1.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:39:"The forum name or an array of forum IDs";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:5:"limit";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:9:"The limit";s:11:"phpdoc_name";s:5:"limit";}i:2;a:5:{s:4:"name";s:5:"start";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:18:"The start position";s:11:"phpdoc_name";s:5:"start";}i:3;a:5:{s:4:"name";s:8:"max_rows";s:3:"ref";b:1;s:4:"type";s:7:"integer";s:11:"description";s:54:"The total rows (not a parameter: returns by reference)";s:11:"phpdoc_name";s:8:"max_rows";}i:4;a:7:{s:4:"name";s:18:"filter_topic_title";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:22:"The topic title filter";s:11:"phpdoc_name";s:18:"filter_topic_title";}i:5;a:7:{s:4:"name";s:16:"show_first_posts";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether to show the first posts";s:11:"phpdoc_name";s:16:"show_first_posts";}i:6;a:8:{s:4:"name";s:8:"date_key";s:7:"default";s:8:"lasttime";s:11:"default_raw";s:10:"'lasttime'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"The date key to sort by";s:11:"phpdoc_name";s:8:"date_key";s:3:"set";s:18:"lasttime firsttime";}i:7;a:7:{s:4:"name";s:3:"hot";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether to limit to hot topics";s:11:"phpdoc_name";s:3:"hot";}i:8;a:7:{s:4:"name";s:24:"filter_topic_description";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:28:"The topic description filter";s:11:"phpdoc_name";s:24:"filter_topic_description";}}s:4:"name";s:17:"show_forum_topics";s:11:"description";s:405:"Get an array of topics in the given forum. Each topic is an array with the following attributes:- id, the topic ID- title, the topic title- lastusername, the username of the last poster- lasttime, the timestamp of the last reply- closed, a Boolean for whether the topic is currently closed or not- firsttitle, the title of the first post- firstpost, the first post (only set if $show_first_posts was true)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:33:"The array of topics (null: error)";}}s:11:"get_emo_dir";a:6:{s:8:"filename";s:22:"sources/forum/ipb1.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_emo_dir";s:11:"description";s:35:"Find the base URL to the emoticons.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:12:"The base URL";}}s:14:"find_emoticons";a:6:{s:8:"filename";s:22:"sources/forum/ipb1.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"find_emoticons";s:11:"description";s:162:"Get a map between emoticon codes and templates representing the HTML-image-code for this emoticon. The emoticons presented of course depend on the forum involved.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:7:"The map";}}s:13:"get_skin_list";a:6:{s:8:"filename";s:22:"sources/forum/ipb1.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_skin_list";s:11:"description";s:44:"Find a list of all forum skins (aka themes).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"The list of skins";}}s:10:"_get_theme";a:6:{s:8:"filename";s:22:"sources/forum/ipb1.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:20:"skip_member_specific";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:39:"Whether to avoid member-specific lookup";s:11:"phpdoc_name";s:20:"skip_member_specific";}}s:4:"name";s:10:"_get_theme";s:11:"description";s:395:"Try to find the theme that the logged-in/guest member is using, and map it to a Composr theme.The themes/map.ini file functions to provide this mapping between forum themes, and Composr themes, and has a slightly different meaning for different forum drivers. For example, some drivers map the forum themes theme directory to the Composr theme name, while others made the humanly readeable name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:9:"The theme";}}s:9:"_get_stat";a:6:{s:8:"filename";s:22:"sources/forum/ipb1.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"stat";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:25:"The name of the statistic";s:11:"phpdoc_name";s:4:"stat";}}s:4:"name";s:9:"_get_stat";s:11:"description";s:21:"Get an IPB statistic.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:26:"The value of the statistic";}}s:11:"get_members";a:6:{s:8:"filename";s:22:"sources/forum/ipb1.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_members";s:11:"description";s:50:"Get the number of members registered on the forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:21:"The number of members";}}s:10:"get_topics";a:6:{s:8:"filename";s:22:"sources/forum/ipb1.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"get_topics";s:11:"description";s:44:"Get the total topics ever made on the forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:20:"The number of topics";}}s:19:"get_num_forum_posts";a:6:{s:8:"filename";s:22:"sources/forum/ipb1.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"get_num_forum_posts";s:11:"description";s:43:"Get the total posts ever made on the forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:19:"The number of posts";}}s:19:"_get_members_groups";a:6:{s:8:"filename";s:22:"sources/forum/ipb1.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:19:"_get_members_groups";s:11:"description";s:60:"Get the forum usergroup relating to the specified member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:29:"The array of forum usergroups";}}s:21:"forum_authorise_login";a:6:{s:8:"filename";s:22:"sources/forum/ipb1.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"username";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:104:"The member username (null: don't use this in the authentication - but look it up using the ID if needed)";s:11:"phpdoc_name";s:8:"username";}i:1;a:5:{s:4:"name";s:6:"userid";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"userid";}i:2;a:5:{s:4:"name";s:15:"password_hashed";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:23:"The md5-hashed password";s:11:"phpdoc_name";s:15:"password_hashed";}i:3;a:5:{s:4:"name";s:12:"password_raw";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:16:"The raw password";s:11:"phpdoc_name";s:12:"password_raw";}i:4;a:7:{s:4:"name";s:12:"cookie_login";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether this is a cookie login";s:11:"phpdoc_name";s:12:"cookie_login";}}s:4:"name";s:21:"forum_authorise_login";s:11:"description";s:294:"Find if the given member ID and password is valid. If username is null, then the member ID is used instead.All authorisation, cookies, and form-logins, are passed through this function.Some forums do cookie logins differently, so a Boolean is passed in to indicate whether it is a cookie login.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:80:"A map of 'id' and 'error'. If 'id' is null, an error occurred and 'error' is set";}}s:14:"get_member_row";a:6:{s:8:"filename";s:22:"sources/forum/ipb1.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:14:"get_member_row";s:11:"description";s:42:"Gets a whole member row from the database.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:37:"The member row (null: no such member)";}}}s:4:"name";s:17:"Forum_driver_ipb1";s:7:"comment";b:1;}s:17:"Forum_driver_ipb2";a:3:{s:9:"functions";a:28:{s:13:"mrow_username";a:6:{s:8:"filename";s:22:"sources/forum/ipb2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"r";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:13:"mrow_username";s:11:"description";s:41:"From a member row, get the member's name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:15:"The member name";}}s:8:"get_mrow";a:6:{s:8:"filename";s:22:"sources/forum/ipb2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:15:"The member name";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:8:"get_mrow";s:11:"description";s:50:"Get a member row for the member of the given name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:38:"The profile-row (null: could not find)";}}s:13:"_get_username";a:6:{s:8:"filename";s:22:"sources/forum/ipb2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:13:"_get_username";s:11:"description";s:152:"Get the name relating to the specified member ID.If this returns null, then the member has been deleted. Always take potential null output into account.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:38:"The member name (null: member deleted)";}}s:15:"get_displayname";a:6:{s:8:"filename";s:22:"sources/forum/ipb2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"username";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"The username";s:11:"phpdoc_name";s:8:"username";}}s:4:"name";s:15:"get_displayname";s:11:"description";s:117:"Get the display name of a username.If no display name generator is configured, this will be the same as the username.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:16:"The display name";}}s:20:"get_matching_members";a:6:{s:8:"filename";s:22:"sources/forum/ipb2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:7:"pattern";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:11:"The pattern";s:11:"phpdoc_name";s:7:"pattern";}i:1;a:7:{s:4:"name";s:5:"limit";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:76:"Maximum number to return (limits to the most recent active) (null: no limit)";s:11:"phpdoc_name";s:5:"limit";}}s:4:"name";s:20:"get_matching_members";s:11:"description";s:64:"Find all members with a name matching the given SQL LIKE string.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:47:"The array of matched members (null: none found)";}}s:24:"get_member_from_username";a:6:{s:8:"filename";s:22:"sources/forum/ipb2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:15:"The member name";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:24:"get_member_from_username";s:11:"description";s:49:"Get a member ID from the given member's username.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";}}s:17:"get_custom_bbcode";a:6:{s:8:"filename";s:22:"sources/forum/ipb2.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"get_custom_bbcode";s:11:"description";s:33:"Get a list of custom BBcode tags.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:92:"The list of tags (each list entry being a map, containing various standard named parameters)";}}s:27:"install_create_custom_field";a:6:{s:8:"filename";s:22:"sources/forum/ipb2.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:32:"The name of the new custom field";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:6:"length";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:34:"The length of the new custom field";s:11:"phpdoc_name";s:6:"length";}i:2;a:7:{s:4:"name";s:6:"locked";s:7:"default";i:1;s:11:"default_raw";s:1:"1";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:27:"Whether the field is locked";s:11:"phpdoc_name";s:6:"locked";}i:3;a:7:{s:4:"name";s:8:"viewable";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:32:"Whether the field is for viewing";s:11:"phpdoc_name";s:8:"viewable";}i:4;a:7:{s:4:"name";s:8:"settable";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:32:"Whether the field is for setting";s:11:"phpdoc_name";s:8:"settable";}}s:4:"name";s:27:"install_create_custom_field";s:11:"description";s:145:"Add the specified custom field to the forum (some forums implemented this using proper custom profile fields, others through adding a new field).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether the custom field was created successfully";}}s:16:"set_custom_field";a:5:{s:8:"filename";s:22:"sources/forum/ipb2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:77:"The field name (e.g. "firstname" for the CPF with a title of "cms_firstname")";s:11:"phpdoc_name";s:5:"field";}i:2;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:9:"The value";s:11:"phpdoc_name";s:5:"value";}}s:4:"name";s:16:"set_custom_field";s:11:"description";s:110:"Set a custom profile field's value, if the custom field exists. Only works on specially-named (titled) fields.";s:5:"flags";a:0:{}}s:17:"get_custom_fields";a:6:{s:8:"filename";s:22:"sources/forum/ipb2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:17:"get_custom_fields";s:11:"description";s:62:"Get custom profile fields values for all 'cms_' prefixed keys.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:71:"A map of the custom profile fields, key_suffix=>value (null: no fields)";}}s:22:"install_test_load_from";a:6:{s:8:"filename";s:22:"sources/forum/ipb2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:27:"The path in which to search";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:22:"install_test_load_from";s:11:"description";s:44:"Searches for forum auto-config at this path.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:44:"Whether the forum auto-config could be found";}}s:28:"install_get_path_search_list";a:6:{s:8:"filename";s:22:"sources/forum/ipb2.php";s:10:"parameters";a:0:{}s:4:"name";s:28:"install_get_path_search_list";s:11:"description";s:46:"Get an array of paths to search for config at.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:49:"The paths in which to search for the forum config";}}s:21:"get_member_avatar_url";a:6:{s:8:"filename";s:22:"sources/forum/ipb2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:21:"get_member_avatar_url";s:11:"description";s:47:"Get the avatar URL for the specified member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:21:"The URL (blank: none)";}}s:21:"make_post_forum_topic";a:6:{s:8:"filename";s:22:"sources/forum/ipb2.php";s:10:"parameters";a:16:{i:0;a:5:{s:4:"name";s:10:"forum_name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:14:"The forum name";s:11:"phpdoc_name";s:10:"forum_name";}i:1;a:5:{s:4:"name";s:16:"topic_identifier";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:58:"The topic identifier (usually _)";s:11:"phpdoc_name";s:16:"topic_identifier";}i:2;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}i:3;a:5:{s:4:"name";s:10:"post_title";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:14:"The post title";s:11:"phpdoc_name";s:10:"post_title";}i:4;a:5:{s:4:"name";s:5:"_post";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:34:"The post content in Comcode format";s:11:"phpdoc_name";s:5:"_post";}i:5;a:5:{s:4:"name";s:13:"content_title";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:77:"The topic title; must be same as content title if this is for a comment topic";s:11:"phpdoc_name";s:13:"content_title";}i:6;a:5:{s:4:"name";s:37:"topic_identifier_encapsulation_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:204:"This is put together with the topic identifier to make a more-human-readable topic title or topic description (hopefully the latter and a $content_title title, but only if the forum supports descriptions)";s:11:"phpdoc_name";s:37:"topic_identifier_encapsulation_prefix";}i:7;a:7:{s:4:"name";s:11:"content_url";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?URLPATH";s:11:"description";s:50:"URL to the content (null: do not make spacer post)";s:11:"phpdoc_name";s:11:"content_url";}i:8;a:7:{s:4:"name";s:4:"time";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:5:"?TIME";s:11:"description";s:38:"The post time (null: use current time)";s:11:"phpdoc_name";s:4:"time";}i:9;a:7:{s:4:"name";s:2:"ip";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:3:"?IP";s:11:"description";s:58:"The post IP address (null: use current members IP address)";s:11:"phpdoc_name";s:2:"ip";}i:10;a:7:{s:4:"name";s:9:"validated";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:146:"Whether the post is validated (null: unknown, find whether it needs to be marked unvalidated initially). This only works with the Conversr driver.";s:11:"phpdoc_name";s:9:"validated";}i:11;a:7:{s:4:"name";s:15:"topic_validated";s:7:"default";i:1;s:11:"default_raw";s:1:"1";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:147:"Whether the topic is validated (null: unknown, find whether it needs to be marked unvalidated initially). This only works with the Conversr driver.";s:11:"phpdoc_name";s:15:"topic_validated";}i:12;a:7:{s:4:"name";s:16:"skip_post_checks";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether to skip post checks";s:11:"phpdoc_name";s:16:"skip_post_checks";}i:13;a:7:{s:4:"name";s:20:"poster_name_if_guest";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:22:"The name of the poster";s:11:"phpdoc_name";s:20:"poster_name_if_guest";}i:14;a:7:{s:4:"name";s:9:"parent_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:39:"ID of post being replied to (null: N/A)";s:11:"phpdoc_name";s:9:"parent_id";}i:15;a:7:{s:4:"name";s:10:"staff_only";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:42:"Whether the reply is only visible to staff";s:11:"phpdoc_name";s:10:"staff_only";}}s:4:"name";s:21:"make_post_forum_topic";s:11:"description";s:466:"Makes a post in the specified forum, in the specified topic according to the given specifications. If the topic doesn't exist, it is created along with a spacer-post.Spacer posts exist in order to allow staff to delete the first true post in a topic. Without spacers, this would not be possible with most forum systems. They also serve to provide meta information on the topic that cannot be encoded in the title (such as a link to the content being commented upon).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:63:"Topic ID (may be null), and whether a hidden post has been made";}}s:21:"get_forum_topic_posts";a:6:{s:8:"filename";s:22:"sources/forum/ipb2.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:8:"topic_id";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:12:"The topic ID";s:11:"phpdoc_name";s:8:"topic_id";}i:1;a:5:{s:4:"name";s:5:"count";s:3:"ref";b:1;s:4:"type";s:7:"integer";s:11:"description";s:52:"The comment count will be returned here by reference";s:11:"phpdoc_name";s:5:"count";}i:2;a:7:{s:4:"name";s:3:"max";s:7:"default";i:100;s:11:"default_raw";s:3:"100";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:28:"Maximum comments to returned";s:11:"phpdoc_name";s:3:"max";}i:3;a:7:{s:4:"name";s:5:"start";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:19:"Comment to start at";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:9:"mark_read";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:62:"Whether to mark the topic read (ignored for this forum driver)";s:11:"phpdoc_name";s:9:"mark_read";}i:5;a:7:{s:4:"name";s:7:"reverse";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:26:"Whether to show in reverse";s:11:"phpdoc_name";s:7:"reverse";}}s:4:"name";s:21:"get_forum_topic_posts";s:11:"description";s:54:"Get an array of maps for the topic in the given forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:106:"The array of maps (Each map is: title, message, member, date) (-1 for no such forum, -2 for no such topic)";}}s:17:"show_forum_topics";a:6:{s:8:"filename";s:22:"sources/forum/ipb2.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:39:"The forum name or an array of forum IDs";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:5:"limit";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:9:"The limit";s:11:"phpdoc_name";s:5:"limit";}i:2;a:5:{s:4:"name";s:5:"start";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:18:"The start position";s:11:"phpdoc_name";s:5:"start";}i:3;a:5:{s:4:"name";s:8:"max_rows";s:3:"ref";b:1;s:4:"type";s:7:"integer";s:11:"description";s:54:"The total rows (not a parameter: returns by reference)";s:11:"phpdoc_name";s:8:"max_rows";}i:4;a:7:{s:4:"name";s:18:"filter_topic_title";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:22:"The topic title filter";s:11:"phpdoc_name";s:18:"filter_topic_title";}i:5;a:7:{s:4:"name";s:16:"show_first_posts";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether to show the first posts";s:11:"phpdoc_name";s:16:"show_first_posts";}i:6;a:8:{s:4:"name";s:8:"date_key";s:7:"default";s:8:"lasttime";s:11:"default_raw";s:10:"'lasttime'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"The date key to sort by";s:11:"phpdoc_name";s:8:"date_key";s:3:"set";s:18:"lasttime firsttime";}i:7;a:7:{s:4:"name";s:3:"hot";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether to limit to hot topics";s:11:"phpdoc_name";s:3:"hot";}i:8;a:7:{s:4:"name";s:24:"filter_topic_description";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:28:"The topic description filter";s:11:"phpdoc_name";s:24:"filter_topic_description";}}s:4:"name";s:17:"show_forum_topics";s:11:"description";s:405:"Get an array of topics in the given forum. Each topic is an array with the following attributes:- id, the topic ID- title, the topic title- lastusername, the username of the last poster- lasttime, the timestamp of the last reply- closed, a Boolean for whether the topic is currently closed or not- firsttitle, the title of the first post- firstpost, the first post (only set if $show_first_posts was true)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:33:"The array of topics (null: error)";}}s:11:"get_emo_dir";a:6:{s:8:"filename";s:22:"sources/forum/ipb2.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_emo_dir";s:11:"description";s:35:"Find the base URL to the emoticons.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:12:"The base URL";}}s:14:"find_emoticons";a:6:{s:8:"filename";s:22:"sources/forum/ipb2.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"find_emoticons";s:11:"description";s:162:"Get a map between emoticon codes and templates representing the HTML-image-code for this emoticon. The emoticons presented of course depend on the forum involved.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:7:"The map";}}s:13:"get_skin_list";a:6:{s:8:"filename";s:22:"sources/forum/ipb2.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_skin_list";s:11:"description";s:44:"Find a list of all forum skins (aka themes).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"The list of skins";}}s:10:"_get_theme";a:6:{s:8:"filename";s:22:"sources/forum/ipb2.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:20:"skip_member_specific";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:39:"Whether to avoid member-specific lookup";s:11:"phpdoc_name";s:20:"skip_member_specific";}}s:4:"name";s:10:"_get_theme";s:11:"description";s:395:"Try to find the theme that the logged-in/guest member is using, and map it to a Composr theme.The themes/map.ini file functions to provide this mapping between forum themes, and Composr themes, and has a slightly different meaning for different forum drivers. For example, some drivers map the forum themes theme directory to the Composr theme name, while others made the humanly readeable name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:9:"The theme";}}s:11:"get_members";a:6:{s:8:"filename";s:22:"sources/forum/ipb2.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_members";s:11:"description";s:50:"Get the number of members registered on the forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:21:"The number of members";}}s:10:"get_topics";a:6:{s:8:"filename";s:22:"sources/forum/ipb2.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"get_topics";s:11:"description";s:44:"Get the total topics ever made on the forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:20:"The number of topics";}}s:19:"get_num_forum_posts";a:6:{s:8:"filename";s:22:"sources/forum/ipb2.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"get_num_forum_posts";s:11:"description";s:43:"Get the total posts ever made on the forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:19:"The number of posts";}}s:19:"_get_members_groups";a:6:{s:8:"filename";s:22:"sources/forum/ipb2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:19:"_get_members_groups";s:11:"description";s:60:"Get the forum usergroup relating to the specified member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:29:"The array of forum usergroups";}}s:19:"forum_create_cookie";a:5:{s:8:"filename";s:22:"sources/forum/ipb2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:27:"The username (null: lookup)";s:11:"phpdoc_name";s:4:"name";}i:2;a:5:{s:4:"name";s:8:"password";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"The password";s:11:"phpdoc_name";s:8:"password";}}s:4:"name";s:19:"forum_create_cookie";s:11:"description";s:29:"Create a member login cookie.";s:5:"flags";a:0:{}}s:21:"forum_authorise_login";a:6:{s:8:"filename";s:22:"sources/forum/ipb2.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"username";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:104:"The member username (null: don't use this in the authentication - but look it up using the ID if needed)";s:11:"phpdoc_name";s:8:"username";}i:1;a:5:{s:4:"name";s:6:"userid";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"userid";}i:2;a:5:{s:4:"name";s:15:"password_hashed";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:23:"The md5-hashed password";s:11:"phpdoc_name";s:15:"password_hashed";}i:3;a:5:{s:4:"name";s:12:"password_raw";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:16:"The raw password";s:11:"phpdoc_name";s:12:"password_raw";}i:4;a:7:{s:4:"name";s:12:"cookie_login";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether this is a cookie login";s:11:"phpdoc_name";s:12:"cookie_login";}}s:4:"name";s:21:"forum_authorise_login";s:11:"description";s:294:"Find if the given member ID and password is valid. If username is null, then the member ID is used instead.All authorisation, cookies, and form-logins, are passed through this function.Some forums do cookie logins differently, so a Boolean is passed in to indicate whether it is a cookie login.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:80:"A map of 'id' and 'error'. If 'id' is null, an error occurred and 'error' is set";}}s:12:"_auth_hashed";a:6:{s:8:"filename";s:22:"sources/forum/ipb2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:8:"password";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"The password";s:11:"phpdoc_name";s:8:"password";}}s:4:"name";s:12:"_auth_hashed";s:11:"description";s:27:"Do converge authentication.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:32:"Whether authentication succeeded";}}s:14:"get_member_row";a:6:{s:8:"filename";s:22:"sources/forum/ipb2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:14:"get_member_row";s:11:"description";s:42:"Gets a whole member row from the database.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:37:"The member row (null: no such member)";}}}s:4:"name";s:17:"Forum_driver_ipb2";s:7:"comment";b:1;}s:17:"Forum_driver_ipb3";a:3:{s:9:"functions";a:43:{s:13:"mrow_username";a:6:{s:8:"filename";s:22:"sources/forum/ipb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"r";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:13:"mrow_username";s:11:"description";s:41:"From a member row, get the member's name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:15:"The member name";}}s:8:"get_mrow";a:6:{s:8:"filename";s:22:"sources/forum/ipb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:15:"The member name";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:8:"get_mrow";s:11:"description";s:50:"Get a member row for the member of the given name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:38:"The profile-row (null: could not find)";}}s:13:"_get_username";a:6:{s:8:"filename";s:22:"sources/forum/ipb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:13:"_get_username";s:11:"description";s:152:"Get the name relating to the specified member ID.If this returns null, then the member has been deleted. Always take potential null output into account.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:38:"The member name (null: member deleted)";}}s:15:"get_displayname";a:6:{s:8:"filename";s:22:"sources/forum/ipb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"username";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"The username";s:11:"phpdoc_name";s:8:"username";}}s:4:"name";s:15:"get_displayname";s:11:"description";s:117:"Get the display name of a username.If no display name generator is configured, this will be the same as the username.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:16:"The display name";}}s:10:"mrow_group";a:6:{s:8:"filename";s:22:"sources/forum/ipb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"r";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:10:"mrow_group";s:11:"description";s:54:"From a member row, get the member's primary usergroup.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"GROUP";s:11:"description";s:30:"The member's primary usergroup";}}s:7:"mrow_id";a:6:{s:8:"filename";s:22:"sources/forum/ipb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"r";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:7:"mrow_id";s:11:"description";s:46:"From a member row, get the member's member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";}}s:15:"get_top_posters";a:6:{s:8:"filename";s:22:"sources/forum/ipb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"limit";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:47:"The limit to the number of top posters to fetch";s:11:"phpdoc_name";s:5:"limit";}}s:4:"name";s:15:"get_top_posters";s:11:"description";s:62:"Get the rows for the top given number of posters on the forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:57:"The rows for the given number of top posters in the forum";}}s:19:"get_previous_member";a:6:{s:8:"filename";s:22:"sources/forum/ipb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:26:"The member ID to decrement";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:19:"get_previous_member";s:11:"description";s:53:"This is the opposite of the get_next_member function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?MEMBER";s:11:"description";s:49:"The previous member ID (null: no previous member)";}}s:15:"get_next_member";a:6:{s:8:"filename";s:22:"sources/forum/ipb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:26:"The member ID to increment";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:15:"get_next_member";s:11:"description";s:146:"Get the member ID of the next member after the given one, or null.It cannot be assumed there are no gaps in member IDs, as members may be deleted.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?MEMBER";s:11:"description";s:41:"The next member ID (null: no next member)";}}s:8:"probe_ip";a:6:{s:8:"filename";s:22:"sources/forum/ipb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"ip";s:3:"ref";b:0;s:4:"type";s:2:"IP";s:11:"description";s:14:"The IP address";s:11:"phpdoc_name";s:2:"ip";}}s:4:"name";s:8:"probe_ip";s:11:"description";s:46:"Try to find a member with the given IP address";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"The distinct rows found";}}s:20:"get_matching_members";a:6:{s:8:"filename";s:22:"sources/forum/ipb3.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:7:"pattern";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:11:"The pattern";s:11:"phpdoc_name";s:7:"pattern";}i:1;a:7:{s:4:"name";s:5:"limit";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:76:"Maximum number to return (limits to the most recent active) (null: no limit)";s:11:"phpdoc_name";s:5:"limit";}}s:4:"name";s:20:"get_matching_members";s:11:"description";s:64:"Find all members with a name matching the given SQL LIKE string.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:47:"The array of matched members (null: none found)";}}s:24:"get_member_from_username";a:6:{s:8:"filename";s:22:"sources/forum/ipb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:15:"The member name";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:24:"get_member_from_username";s:11:"description";s:49:"Get a member ID from the given member's username.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";}}s:17:"get_custom_bbcode";a:6:{s:8:"filename";s:22:"sources/forum/ipb3.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"get_custom_bbcode";s:11:"description";s:33:"Get a list of custom BBcode tags.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:92:"The list of tags (each list entry being a map, containing various standard named parameters)";}}s:27:"install_create_custom_field";a:6:{s:8:"filename";s:22:"sources/forum/ipb3.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:32:"The name of the new custom field";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:6:"length";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:34:"The length of the new custom field";s:11:"phpdoc_name";s:6:"length";}i:2;a:7:{s:4:"name";s:6:"locked";s:7:"default";i:1;s:11:"default_raw";s:1:"1";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:27:"Whether the field is locked";s:11:"phpdoc_name";s:6:"locked";}i:3;a:7:{s:4:"name";s:8:"viewable";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:32:"Whether the field is for viewing";s:11:"phpdoc_name";s:8:"viewable";}i:4;a:7:{s:4:"name";s:8:"settable";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:32:"Whether the field is for setting";s:11:"phpdoc_name";s:8:"settable";}}s:4:"name";s:27:"install_create_custom_field";s:11:"description";s:145:"Add the specified custom field to the forum (some forums implemented this using proper custom profile fields, others through adding a new field).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether the custom field was created successfully";}}s:16:"set_custom_field";a:5:{s:8:"filename";s:22:"sources/forum/ipb3.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:77:"The field name (e.g. "firstname" for the CPF with a title of "cms_firstname")";s:11:"phpdoc_name";s:5:"field";}i:2;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:9:"The value";s:11:"phpdoc_name";s:5:"value";}}s:4:"name";s:16:"set_custom_field";s:11:"description";s:110:"Set a custom profile field's value, if the custom field exists. Only works on specially-named (titled) fields.";s:5:"flags";a:0:{}}s:17:"get_custom_fields";a:6:{s:8:"filename";s:22:"sources/forum/ipb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:17:"get_custom_fields";s:11:"description";s:62:"Get custom profile fields values for all 'cms_' prefixed keys.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:71:"A map of the custom profile fields, key_suffix=>value (null: no fields)";}}s:22:"install_test_load_from";a:6:{s:8:"filename";s:22:"sources/forum/ipb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:27:"The path in which to search";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:22:"install_test_load_from";s:11:"description";s:44:"Searches for forum auto-config at this path.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:44:"Whether the forum auto-config could be found";}}s:28:"install_get_path_search_list";a:6:{s:8:"filename";s:22:"sources/forum/ipb3.php";s:10:"parameters";a:0:{}s:4:"name";s:28:"install_get_path_search_list";s:11:"description";s:46:"Get an array of paths to search for config at.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:49:"The paths in which to search for the forum config";}}s:21:"get_member_avatar_url";a:6:{s:8:"filename";s:22:"sources/forum/ipb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:21:"get_member_avatar_url";s:11:"description";s:47:"Get the avatar URL for the specified member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:21:"The URL (blank: none)";}}s:20:"get_member_photo_url";a:6:{s:8:"filename";s:22:"sources/forum/ipb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:20:"get_member_photo_url";s:11:"description";s:56:"Get the photo thumbnail URL for the specified member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:21:"The URL (blank: none)";}}s:21:"make_post_forum_topic";a:6:{s:8:"filename";s:22:"sources/forum/ipb3.php";s:10:"parameters";a:16:{i:0;a:5:{s:4:"name";s:10:"forum_name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:14:"The forum name";s:11:"phpdoc_name";s:10:"forum_name";}i:1;a:5:{s:4:"name";s:16:"topic_identifier";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:58:"The topic identifier (usually _)";s:11:"phpdoc_name";s:16:"topic_identifier";}i:2;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}i:3;a:5:{s:4:"name";s:10:"post_title";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:14:"The post title";s:11:"phpdoc_name";s:10:"post_title";}i:4;a:5:{s:4:"name";s:5:"_post";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:34:"The post content in Comcode format";s:11:"phpdoc_name";s:5:"_post";}i:5;a:5:{s:4:"name";s:13:"content_title";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:77:"The topic title; must be same as content title if this is for a comment topic";s:11:"phpdoc_name";s:13:"content_title";}i:6;a:5:{s:4:"name";s:37:"topic_identifier_encapsulation_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:204:"This is put together with the topic identifier to make a more-human-readable topic title or topic description (hopefully the latter and a $content_title title, but only if the forum supports descriptions)";s:11:"phpdoc_name";s:37:"topic_identifier_encapsulation_prefix";}i:7;a:7:{s:4:"name";s:11:"content_url";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?URLPATH";s:11:"description";s:50:"URL to the content (null: do not make spacer post)";s:11:"phpdoc_name";s:11:"content_url";}i:8;a:7:{s:4:"name";s:4:"time";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:5:"?TIME";s:11:"description";s:38:"The post time (null: use current time)";s:11:"phpdoc_name";s:4:"time";}i:9;a:7:{s:4:"name";s:2:"ip";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:3:"?IP";s:11:"description";s:58:"The post IP address (null: use current members IP address)";s:11:"phpdoc_name";s:2:"ip";}i:10;a:7:{s:4:"name";s:9:"validated";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:146:"Whether the post is validated (null: unknown, find whether it needs to be marked unvalidated initially). This only works with the Conversr driver.";s:11:"phpdoc_name";s:9:"validated";}i:11;a:7:{s:4:"name";s:15:"topic_validated";s:7:"default";i:1;s:11:"default_raw";s:1:"1";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:147:"Whether the topic is validated (null: unknown, find whether it needs to be marked unvalidated initially). This only works with the Conversr driver.";s:11:"phpdoc_name";s:15:"topic_validated";}i:12;a:7:{s:4:"name";s:16:"skip_post_checks";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether to skip post checks";s:11:"phpdoc_name";s:16:"skip_post_checks";}i:13;a:7:{s:4:"name";s:20:"poster_name_if_guest";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:22:"The name of the poster";s:11:"phpdoc_name";s:20:"poster_name_if_guest";}i:14;a:7:{s:4:"name";s:9:"parent_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:39:"ID of post being replied to (null: N/A)";s:11:"phpdoc_name";s:9:"parent_id";}i:15;a:7:{s:4:"name";s:10:"staff_only";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:42:"Whether the reply is only visible to staff";s:11:"phpdoc_name";s:10:"staff_only";}}s:4:"name";s:21:"make_post_forum_topic";s:11:"description";s:466:"Makes a post in the specified forum, in the specified topic according to the given specifications. If the topic doesn't exist, it is created along with a spacer-post.Spacer posts exist in order to allow staff to delete the first true post in a topic. Without spacers, this would not be possible with most forum systems. They also serve to provide meta information on the topic that cannot be encoded in the title (such as a link to the content being commented upon).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:63:"Topic ID (may be null), and whether a hidden post has been made";}}s:21:"get_forum_topic_posts";a:6:{s:8:"filename";s:22:"sources/forum/ipb3.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:8:"topic_id";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:12:"The topic ID";s:11:"phpdoc_name";s:8:"topic_id";}i:1;a:5:{s:4:"name";s:5:"count";s:3:"ref";b:1;s:4:"type";s:7:"integer";s:11:"description";s:52:"The comment count will be returned here by reference";s:11:"phpdoc_name";s:5:"count";}i:2;a:7:{s:4:"name";s:3:"max";s:7:"default";i:100;s:11:"default_raw";s:3:"100";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:28:"Maximum comments to returned";s:11:"phpdoc_name";s:3:"max";}i:3;a:7:{s:4:"name";s:5:"start";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:19:"Comment to start at";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:9:"mark_read";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:62:"Whether to mark the topic read (ignored for this forum driver)";s:11:"phpdoc_name";s:9:"mark_read";}i:5;a:7:{s:4:"name";s:7:"reverse";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:26:"Whether to show in reverse";s:11:"phpdoc_name";s:7:"reverse";}}s:4:"name";s:21:"get_forum_topic_posts";s:11:"description";s:54:"Get an array of maps for the topic in the given forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:106:"The array of maps (Each map is: title, message, member, date) (-1 for no such forum, -2 for no such topic)";}}s:17:"show_forum_topics";a:6:{s:8:"filename";s:22:"sources/forum/ipb3.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:39:"The forum name or an array of forum IDs";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:5:"limit";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:9:"The limit";s:11:"phpdoc_name";s:5:"limit";}i:2;a:5:{s:4:"name";s:5:"start";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:18:"The start position";s:11:"phpdoc_name";s:5:"start";}i:3;a:5:{s:4:"name";s:8:"max_rows";s:3:"ref";b:1;s:4:"type";s:7:"integer";s:11:"description";s:54:"The total rows (not a parameter: returns by reference)";s:11:"phpdoc_name";s:8:"max_rows";}i:4;a:7:{s:4:"name";s:18:"filter_topic_title";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:22:"The topic title filter";s:11:"phpdoc_name";s:18:"filter_topic_title";}i:5;a:7:{s:4:"name";s:16:"show_first_posts";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether to show the first posts";s:11:"phpdoc_name";s:16:"show_first_posts";}i:6;a:8:{s:4:"name";s:8:"date_key";s:7:"default";s:8:"lasttime";s:11:"default_raw";s:10:"'lasttime'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"The date key to sort by";s:11:"phpdoc_name";s:8:"date_key";s:3:"set";s:18:"lasttime firsttime";}i:7;a:7:{s:4:"name";s:3:"hot";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether to limit to hot topics";s:11:"phpdoc_name";s:3:"hot";}i:8;a:7:{s:4:"name";s:24:"filter_topic_description";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:28:"The topic description filter";s:11:"phpdoc_name";s:24:"filter_topic_description";}}s:4:"name";s:17:"show_forum_topics";s:11:"description";s:405:"Get an array of topics in the given forum. Each topic is an array with the following attributes:- id, the topic ID- title, the topic title- lastusername, the username of the last poster- lasttime, the timestamp of the last reply- closed, a Boolean for whether the topic is currently closed or not- firsttitle, the title of the first post- firstpost, the first post (only set if $show_first_posts was true)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:33:"The array of topics (null: error)";}}s:11:"get_emo_dir";a:6:{s:8:"filename";s:22:"sources/forum/ipb3.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_emo_dir";s:11:"description";s:35:"Find the base URL to the emoticons.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:12:"The base URL";}}s:14:"find_emoticons";a:6:{s:8:"filename";s:22:"sources/forum/ipb3.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"find_emoticons";s:11:"description";s:162:"Get a map between emoticon codes and templates representing the HTML-image-code for this emoticon. The emoticons presented of course depend on the forum involved.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:7:"The map";}}s:13:"get_skin_list";a:6:{s:8:"filename";s:22:"sources/forum/ipb3.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_skin_list";s:11:"description";s:44:"Find a list of all forum skins (aka themes).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"The list of skins";}}s:10:"_get_theme";a:6:{s:8:"filename";s:22:"sources/forum/ipb3.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:20:"skip_member_specific";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:39:"Whether to avoid member-specific lookup";s:11:"phpdoc_name";s:20:"skip_member_specific";}}s:4:"name";s:10:"_get_theme";s:11:"description";s:395:"Try to find the theme that the logged-in/guest member is using, and map it to a Composr theme.The themes/map.ini file functions to provide this mapping between forum themes, and Composr themes, and has a slightly different meaning for different forum drivers. For example, some drivers map the forum themes theme directory to the Composr theme name, while others made the humanly readeable name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:9:"The theme";}}s:9:"_join_url";a:6:{s:8:"filename";s:22:"sources/forum/ipb3.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"_join_url";s:11:"description";s:74:"Get a URL to the registration page (for people to create member accounts).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:32:"The URL to the registration page";}}s:15:"member_home_url";a:6:{s:8:"filename";s:22:"sources/forum/ipb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:15:"member_home_url";s:11:"description";s:57:"Get a URL to the specified member's home (control panel).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:27:"The URL to the members home";}}s:17:"_users_online_url";a:6:{s:8:"filename";s:22:"sources/forum/ipb3.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"_users_online_url";s:11:"description";s:37:"Get a URL to the members-online page.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:34:"The URL to the members-online page";}}s:14:"_member_pm_url";a:6:{s:8:"filename";s:22:"sources/forum/ipb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:14:"_member_pm_url";s:11:"description";s:65:"Get a URL to send a private/personal message to the given member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:44:"The URL to the private/personal message page";}}s:11:"get_members";a:6:{s:8:"filename";s:22:"sources/forum/ipb3.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_members";s:11:"description";s:50:"Get the number of members registered on the forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:21:"The number of members";}}s:10:"get_topics";a:6:{s:8:"filename";s:22:"sources/forum/ipb3.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"get_topics";s:11:"description";s:44:"Get the total topics ever made on the forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:20:"The number of topics";}}s:19:"get_num_forum_posts";a:6:{s:8:"filename";s:22:"sources/forum/ipb3.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"get_num_forum_posts";s:11:"description";s:43:"Get the total posts ever made on the forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:19:"The number of posts";}}s:19:"_get_members_groups";a:6:{s:8:"filename";s:22:"sources/forum/ipb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:19:"_get_members_groups";s:11:"description";s:60:"Get the forum usergroup relating to the specified member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:29:"The array of forum usergroups";}}s:18:"member_group_query";a:6:{s:8:"filename";s:22:"sources/forum/ipb3.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:6:"groups";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:23:"The array of usergroups";s:11:"phpdoc_name";s:6:"groups";}i:1;a:7:{s:4:"name";s:3:"max";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:170:"Return up to this many entries for primary members and this many entries for secondary members (null: no limit, only use no limit if querying very restricted usergroups!)";s:11:"phpdoc_name";s:3:"max";}i:2;a:7:{s:4:"name";s:5:"start";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:80:"Return primary members after this offset and secondary members after this offset";s:11:"phpdoc_name";s:5:"start";}}s:4:"name";s:18:"member_group_query";s:11:"description";s:81:"Get an array of members who are in at least one of the given array of usergroups.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:39:"The array of members (null: no members)";}}s:9:"_is_staff";a:6:{s:8:"filename";s:22:"sources/forum/ipb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:9:"_is_staff";s:11:"description";s:58:"Find if the specified member ID is marked as staff or not.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether the member is staff";}}s:15:"_is_super_admin";a:6:{s:8:"filename";s:22:"sources/forum/ipb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:15:"_is_super_admin";s:11:"description";s:66:"Find if the specified member ID is marked as a super admin or not.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:35:"Whether the member is a super admin";}}s:19:"forum_create_cookie";a:5:{s:8:"filename";s:22:"sources/forum/ipb3.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:27:"The username (null: lookup)";s:11:"phpdoc_name";s:4:"name";}i:2;a:5:{s:4:"name";s:8:"password";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"The password";s:11:"phpdoc_name";s:8:"password";}}s:4:"name";s:19:"forum_create_cookie";s:11:"description";s:29:"Create a member login cookie.";s:5:"flags";a:0:{}}s:9:"is_banned";a:6:{s:8:"filename";s:22:"sources/forum/ipb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:9:"is_banned";s:11:"description";s:42:"Find out if the given member ID is banned.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:28:"Whether the member is banned";}}s:21:"forum_authorise_login";a:6:{s:8:"filename";s:22:"sources/forum/ipb3.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"username";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:104:"The member username (null: don't use this in the authentication - but look it up using the ID if needed)";s:11:"phpdoc_name";s:8:"username";}i:1;a:5:{s:4:"name";s:6:"userid";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"userid";}i:2;a:5:{s:4:"name";s:15:"password_hashed";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:23:"The md5-hashed password";s:11:"phpdoc_name";s:15:"password_hashed";}i:3;a:5:{s:4:"name";s:12:"password_raw";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:16:"The raw password";s:11:"phpdoc_name";s:12:"password_raw";}i:4;a:7:{s:4:"name";s:12:"cookie_login";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether this is a cookie login";s:11:"phpdoc_name";s:12:"cookie_login";}}s:4:"name";s:21:"forum_authorise_login";s:11:"description";s:294:"Find if the given member ID and password is valid. If username is null, then the member ID is used instead.All authorisation, cookies, and form-logins, are passed through this function.Some forums do cookie logins differently, so a Boolean is passed in to indicate whether it is a cookie login.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:80:"A map of 'id' and 'error'. If 'id' is null, an error occurred and 'error' is set";}}s:12:"_auth_hashed";a:6:{s:8:"filename";s:22:"sources/forum/ipb3.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:8:"password";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"The password";s:11:"phpdoc_name";s:8:"password";}}s:4:"name";s:12:"_auth_hashed";s:11:"description";s:27:"Do converge authentication.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:32:"Whether authentication succeeded";}}s:14:"get_member_row";a:6:{s:8:"filename";s:22:"sources/forum/ipb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:14:"get_member_row";s:11:"description";s:42:"Gets a whole member row from the database.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:37:"The member row (null: no such member)";}}}s:4:"name";s:17:"Forum_driver_ipb3";s:7:"comment";b:1;}s:17:"Forum_driver_mybb";a:3:{s:9:"functions";a:74:{s:8:"check_db";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:0:{}s:4:"name";s:8:"check_db";s:11:"description";s:54:"Check the connected DB is valid for this forum driver.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:19:"Whether it is valid";}}s:15:"get_top_posters";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"limit";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:47:"The limit to the number of top posters to fetch";s:11:"phpdoc_name";s:5:"limit";}}s:4:"name";s:15:"get_top_posters";s:11:"description";s:62:"Get the rows for the top given number of posters on the forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:57:"The rows for the given number of top posters in the forum";}}s:14:"forum_get_lang";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:45:"The member who's language needs to be fetched";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:14:"forum_get_lang";s:11:"description";s:135:"Attempt to to find the member's language from their forum profile. It converts between language-identifiers using a map (lang/map.ini).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:14:"?LANGUAGE_NAME";s:11:"description";s:37:"The member's language (null: unknown)";}}s:20:"is_cookie_login_name";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"is_cookie_login_name";s:11:"description";s:74:"Find if the login cookie contains the login name instead of the member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:61:"Whether the login cookie contains a login name or a member ID";}}s:9:"is_hashed";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"is_hashed";s:11:"description";s:35:"Find if login cookie is md5-hashed.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether the login cookie is md5-hashed";}}s:12:"get_guest_id";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"get_guest_id";s:11:"description";s:45:"Find the member ID of the forum guest member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"MEMBER";s:11:"description";s:39:"The member ID of the forum guest member";}}s:25:"get_drivered_table_prefix";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"get_drivered_table_prefix";s:11:"description";s:46:"Get the forums' table prefix for the database.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:31:"The forum database table prefix";}}s:27:"install_create_custom_field";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:32:"The name of the new custom field";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:6:"length";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:34:"The length of the new custom field";s:11:"phpdoc_name";s:6:"length";}}s:4:"name";s:27:"install_create_custom_field";s:11:"description";s:145:"Add the specified custom field to the forum (some forums implemented this using proper custom profile fields, others through adding a new field).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether the custom field was created successfully";}}s:17:"install_specifics";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"install_specifics";s:11:"description";s:435:"Get an array of attributes to take in from the installer. Almost all forums require a table prefix, which the requirement there-of is defined through this function.The attributes have 4 values in an array- name, the name of the attribute for _config.php- default, the default value (perhaps obtained through autodetection from forum config)- description, a textual description of the attributes- title, a textual title of the attribute";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:28:"The attributes for the forum";}}s:22:"install_test_load_from";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:27:"The path in which to search";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:22:"install_test_load_from";s:11:"description";s:44:"Searches for forum auto-config at this path.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:44:"Whether the forum auto-config could be found";}}s:28:"install_get_path_search_list";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:0:{}s:4:"name";s:28:"install_get_path_search_list";s:11:"description";s:46:"Get an array of paths to search for config at.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:49:"The paths in which to search for the forum config";}}s:20:"get_emoticon_chooser";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:10:"field_name";s:7:"default";s:4:"post";s:11:"default_raw";s:6:"'post'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:53:"The ID of the form field the emoticon chooser adds to";s:11:"phpdoc_name";s:10:"field_name";}}s:4:"name";s:20:"get_emoticon_chooser";s:11:"description";s:33:"Get an emoticon chooser template.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:29:"The emoticon chooser template";}}s:9:"pin_topic";a:5:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:12:"The topic ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:3:"pin";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"True: pin it, False: unpin it";s:11:"phpdoc_name";s:3:"pin";}}s:4:"name";s:9:"pin_topic";s:11:"description";s:12:"Pin a topic.";s:5:"flags";a:0:{}}s:16:"set_custom_field";a:5:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:77:"The field name (e.g. "firstname" for the CPF with a title of "cms_firstname")";s:11:"phpdoc_name";s:5:"field";}i:2;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:9:"The value";s:11:"phpdoc_name";s:5:"value";}}s:4:"name";s:16:"set_custom_field";s:11:"description";s:110:"Set a custom profile field's value, if the custom field exists. Only works on specially-named (titled) fields.";s:5:"flags";a:0:{}}s:17:"get_custom_fields";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:17:"get_custom_fields";s:11:"description";s:62:"Get custom profile fields values for all 'cms_' prefixed keys.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:71:"A map of the custom profile fields, key_suffix=>value (null: no fields)";}}s:8:"get_mrow";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:15:"The member name";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:8:"get_mrow";s:11:"description";s:50:"Get a member row for the member of the given name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:33:"The profile-row (null: not found)";}}s:10:"mrow_group";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"r";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:10:"mrow_group";s:11:"description";s:54:"From a member row, get the member's primary usergroup.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"GROUP";s:11:"description";s:30:"The member's primary usergroup";}}s:7:"mrow_id";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"r";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:7:"mrow_id";s:11:"description";s:46:"From a member row, get the member's member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";}}s:14:"mrow_lastvisit";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"r";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:14:"mrow_lastvisit";s:11:"description";s:52:"From a member row, get the member's last visit date.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:4:"TIME";s:11:"description";s:19:"The last visit date";}}s:13:"mrow_username";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"r";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:13:"mrow_username";s:11:"description";s:41:"From a member row, get the member's name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:15:"The member name";}}s:10:"mrow_email";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"r";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:10:"mrow_email";s:11:"description";s:51:"From a member row, get the member's e-mail address.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:25:"The member e-mail address";}}s:15:"member_home_url";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:15:"member_home_url";s:11:"description";s:57:"Get a URL to the specified member's home (control panel).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:27:"The URL to the members home";}}s:20:"get_member_photo_url";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:20:"get_member_photo_url";s:11:"description";s:56:"Get the photo thumbnail URL for the specified member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:21:"The URL (blank: none)";}}s:21:"get_member_avatar_url";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:21:"get_member_avatar_url";s:11:"description";s:47:"Get the avatar URL for the specified member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:21:"The URL (blank: none)";}}s:19:"_member_profile_url";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:19:"_member_profile_url";s:11:"description";s:44:"Get a URL to the specified member's profile.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:29:"The URL to the member profile";}}s:9:"_join_url";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"_join_url";s:11:"description";s:74:"Get a URL to the registration page (for people to create member accounts).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:32:"The URL to the registration page";}}s:17:"_users_online_url";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"_users_online_url";s:11:"description";s:37:"Get a URL to the members-online page.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:34:"The URL to the members-online page";}}s:14:"_member_pm_url";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:14:"_member_pm_url";s:11:"description";s:65:"Get a URL to send a private/personal message to the given member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:44:"The URL to the private/personal message page";}}s:10:"_forum_url";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:12:"The forum ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:10:"_forum_url";s:11:"description";s:33:"Get a URL to the specified forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:30:"The URL to the specified forum";}}s:18:"forum_id_from_name";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:10:"forum_name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:14:"The forum name";s:11:"phpdoc_name";s:10:"forum_name";}}s:4:"name";s:18:"forum_id_from_name";s:11:"description";s:35:"Get the forum ID from a forum name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?integer";s:11:"description";s:30:"The forum ID (null: not found)";}}s:9:"_phpbb_ip";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"ip";s:3:"ref";b:0;s:4:"type";s:2:"IP";s:11:"description";s:21:"The normal IP address";s:11:"phpdoc_name";s:2:"ip";}}s:4:"name";s:9:"_phpbb_ip";s:11:"description";s:59:"Convert an IP address into phpBB hexadecimal string format.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:20:"The phpBB IP address";}}s:12:"_un_phpbb_ip";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"ip";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:20:"The phpBB IP address";s:11:"phpdoc_name";s:2:"ip";}}s:4:"name";s:12:"_un_phpbb_ip";s:11:"description";s:59:"Convert an IP address from phpBB hexadecimal string format.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:2:"IP";s:11:"description";s:21:"The normal IP address";}}s:21:"make_post_forum_topic";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:16:{i:0;a:5:{s:4:"name";s:10:"forum_name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:14:"The forum name";s:11:"phpdoc_name";s:10:"forum_name";}i:1;a:5:{s:4:"name";s:16:"topic_identifier";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:58:"The topic identifier (usually _)";s:11:"phpdoc_name";s:16:"topic_identifier";}i:2;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}i:3;a:5:{s:4:"name";s:10:"post_title";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:14:"The post title";s:11:"phpdoc_name";s:10:"post_title";}i:4;a:5:{s:4:"name";s:5:"_post";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:34:"The post content in Comcode format";s:11:"phpdoc_name";s:5:"_post";}i:5;a:5:{s:4:"name";s:13:"content_title";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:77:"The topic title; must be same as content title if this is for a comment topic";s:11:"phpdoc_name";s:13:"content_title";}i:6;a:5:{s:4:"name";s:37:"topic_identifier_encapsulation_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:204:"This is put together with the topic identifier to make a more-human-readable topic title or topic description (hopefully the latter and a $content_title title, but only if the forum supports descriptions)";s:11:"phpdoc_name";s:37:"topic_identifier_encapsulation_prefix";}i:7;a:7:{s:4:"name";s:11:"content_url";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?URLPATH";s:11:"description";s:50:"URL to the content (null: do not make spacer post)";s:11:"phpdoc_name";s:11:"content_url";}i:8;a:7:{s:4:"name";s:4:"time";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:5:"?TIME";s:11:"description";s:38:"The post time (null: use current time)";s:11:"phpdoc_name";s:4:"time";}i:9;a:7:{s:4:"name";s:2:"ip";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:3:"?IP";s:11:"description";s:58:"The post IP address (null: use current members IP address)";s:11:"phpdoc_name";s:2:"ip";}i:10;a:7:{s:4:"name";s:9:"validated";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:146:"Whether the post is validated (null: unknown, find whether it needs to be marked unvalidated initially). This only works with the Conversr driver.";s:11:"phpdoc_name";s:9:"validated";}i:11;a:7:{s:4:"name";s:15:"topic_validated";s:7:"default";i:1;s:11:"default_raw";s:1:"1";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:147:"Whether the topic is validated (null: unknown, find whether it needs to be marked unvalidated initially). This only works with the Conversr driver.";s:11:"phpdoc_name";s:15:"topic_validated";}i:12;a:7:{s:4:"name";s:16:"skip_post_checks";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether to skip post checks";s:11:"phpdoc_name";s:16:"skip_post_checks";}i:13;a:7:{s:4:"name";s:20:"poster_name_if_guest";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:22:"The name of the poster";s:11:"phpdoc_name";s:20:"poster_name_if_guest";}i:14;a:7:{s:4:"name";s:9:"parent_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:39:"ID of post being replied to (null: N/A)";s:11:"phpdoc_name";s:9:"parent_id";}i:15;a:7:{s:4:"name";s:10:"staff_only";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:42:"Whether the reply is only visible to staff";s:11:"phpdoc_name";s:10:"staff_only";}}s:4:"name";s:21:"make_post_forum_topic";s:11:"description";s:466:"Makes a post in the specified forum, in the specified topic according to the given specifications. If the topic doesn't exist, it is created along with a spacer-post.Spacer posts exist in order to allow staff to delete the first true post in a topic. Without spacers, this would not be possible with most forum systems. They also serve to provide meta information on the topic that cannot be encoded in the title (such as a link to the content being commented upon).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:63:"Topic ID (may be null), and whether a hidden post has been made";}}s:21:"get_forum_topic_posts";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:8:"topic_id";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:12:"The topic ID";s:11:"phpdoc_name";s:8:"topic_id";}i:1;a:5:{s:4:"name";s:5:"count";s:3:"ref";b:1;s:4:"type";s:7:"integer";s:11:"description";s:52:"The comment count will be returned here by reference";s:11:"phpdoc_name";s:5:"count";}i:2;a:7:{s:4:"name";s:3:"max";s:7:"default";i:100;s:11:"default_raw";s:3:"100";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:28:"Maximum comments to returned";s:11:"phpdoc_name";s:3:"max";}i:3;a:7:{s:4:"name";s:5:"start";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:19:"Comment to start at";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:9:"mark_read";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:62:"Whether to mark the topic read (ignored for this forum driver)";s:11:"phpdoc_name";s:9:"mark_read";}i:5;a:7:{s:4:"name";s:7:"reverse";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:26:"Whether to show in reverse";s:11:"phpdoc_name";s:7:"reverse";}}s:4:"name";s:21:"get_forum_topic_posts";s:11:"description";s:54:"Get an array of maps for the topic in the given forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:106:"The array of maps (Each map is: title, message, member, date) (-1 for no such forum, -2 for no such topic)";}}s:9:"topic_url";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:12:"The topic ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:5:"forum";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"The forum ID";s:11:"phpdoc_name";s:5:"forum";}}s:4:"name";s:9:"topic_url";s:11:"description";s:133:"Get a URL to the specified topic ID. Most forums don't require the second parameter, but some do, so it is required in the interface.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:20:"The URL to the topic";}}s:8:"post_url";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:11:"The post ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:5:"forum";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"The forum ID";s:11:"phpdoc_name";s:5:"forum";}}s:4:"name";s:8:"post_url";s:11:"description";s:35:"Get a URL to the specified post ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:19:"The URL to the post";}}s:34:"find_topic_id_for_topic_identifier";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"forum";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:19:"The forum name / ID";s:11:"phpdoc_name";s:5:"forum";}i:1;a:5:{s:4:"name";s:16:"topic_identifier";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:20:"The topic identifier";s:11:"phpdoc_name";s:16:"topic_identifier";}}s:4:"name";s:34:"find_topic_id_for_topic_identifier";s:11:"description";s:157:"Get the topic ID from a topic identifier in the specified forum. It is used by comment topics, which means that the unique-topic-name assumption holds valid.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?integer";s:11:"description";s:30:"The topic ID (null: not found)";}}s:17:"show_forum_topics";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:39:"The forum name or an array of forum IDs";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:5:"limit";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:9:"The limit";s:11:"phpdoc_name";s:5:"limit";}i:2;a:5:{s:4:"name";s:5:"start";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:18:"The start position";s:11:"phpdoc_name";s:5:"start";}i:3;a:5:{s:4:"name";s:8:"max_rows";s:3:"ref";b:1;s:4:"type";s:7:"integer";s:11:"description";s:54:"The total rows (not a parameter: returns by reference)";s:11:"phpdoc_name";s:8:"max_rows";}i:4;a:7:{s:4:"name";s:18:"filter_topic_title";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:22:"The topic title filter";s:11:"phpdoc_name";s:18:"filter_topic_title";}i:5;a:7:{s:4:"name";s:16:"show_first_posts";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether to show the first posts";s:11:"phpdoc_name";s:16:"show_first_posts";}i:6;a:8:{s:4:"name";s:8:"date_key";s:7:"default";s:8:"lasttime";s:11:"default_raw";s:10:"'lasttime'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"The date key to sort by";s:11:"phpdoc_name";s:8:"date_key";s:3:"set";s:18:"lasttime firsttime";}i:7;a:7:{s:4:"name";s:3:"hot";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether to limit to hot topics";s:11:"phpdoc_name";s:3:"hot";}i:8;a:7:{s:4:"name";s:24:"filter_topic_description";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:28:"The topic description filter";s:11:"phpdoc_name";s:24:"filter_topic_description";}}s:4:"name";s:17:"show_forum_topics";s:11:"description";s:405:"Get an array of topics in the given forum. Each topic is an array with the following attributes:- id, the topic ID- title, the topic title- lastusername, the username of the last poster- lasttime, the timestamp of the last reply- closed, a Boolean for whether the topic is currently closed or not- firsttitle, the title of the first post- firstpost, the first post (only set if $show_first_posts was true)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:33:"The array of topics (null: error)";}}s:18:"member_group_query";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:6:"groups";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:19:"The array of groups";s:11:"phpdoc_name";s:6:"groups";}i:1;a:7:{s:4:"name";s:3:"max";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:170:"Return up to this many entries for primary members and this many entries for secondary members (null: no limit, only use no limit if querying very restricted usergroups!)";s:11:"phpdoc_name";s:3:"max";}i:2;a:7:{s:4:"name";s:5:"start";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:80:"Return primary members after this offset and secondary members after this offset";s:11:"phpdoc_name";s:5:"start";}}s:4:"name";s:18:"member_group_query";s:11:"description";s:77:"Get an array of members who are in at least one of the given array of groups.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:39:"The array of members (null: no members)";}}s:19:"get_previous_member";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:26:"The member ID to decrement";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:19:"get_previous_member";s:11:"description";s:53:"This is the opposite of the get_next_member function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?MEMBER";s:11:"description";s:49:"The previous member ID (null: no previous member)";}}s:15:"get_next_member";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:26:"The member ID to increment";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:15:"get_next_member";s:11:"description";s:146:"Get the member ID of the next member after the given one, or null.It cannot be assumed there are no gaps in member IDs, as members may be deleted.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?MEMBER";s:11:"description";s:41:"The next member ID (null: no next member)";}}s:8:"probe_ip";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"ip";s:3:"ref";b:0;s:4:"type";s:2:"IP";s:11:"description";s:14:"The IP address";s:11:"phpdoc_name";s:2:"ip";}}s:4:"name";s:8:"probe_ip";s:11:"description";s:46:"Try to find a member with the given IP address";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"The distinct rows found";}}s:13:"_get_username";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:13:"_get_username";s:11:"description";s:152:"Get the name relating to the specified member ID.If this returns null, then the member has been deleted. Always take potential null output into account.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:38:"The member name (null: member deleted)";}}s:25:"_get_member_email_address";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:25:"_get_member_email_address";s:11:"description";s:51:"Get the e-mail address for the specified member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:18:"The e-mail address";}}s:24:"get_member_email_allowed";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:24:"get_member_email_allowed";s:11:"description";s:49:"Find if this member may have e-mails sent to them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:48:"Whether the member may have e-mails sent to them";}}s:25:"get_member_join_timestamp";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:25:"get_member_join_timestamp";s:11:"description";s:42:"Get the timestamp of a member's join date.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:4:"TIME";s:11:"description";s:13:"The timestamp";}}s:20:"get_matching_members";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:7:"pattern";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:11:"The pattern";s:11:"phpdoc_name";s:7:"pattern";}i:1;a:7:{s:4:"name";s:5:"limit";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:76:"Maximum number to return (limits to the most recent active) (null: no limit)";s:11:"phpdoc_name";s:5:"limit";}}s:4:"name";s:20:"get_matching_members";s:11:"description";s:64:"Find all members with a name matching the given SQL LIKE string.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:47:"The array of matched members (null: none found)";}}s:14:"get_post_count";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:14:"get_post_count";s:11:"description";s:34:"Get the given member's post count.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:14:"The post count";}}s:15:"get_topic_count";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:15:"get_topic_count";s:11:"description";s:35:"Get the given member's topic count.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"The topic count";}}s:9:"is_banned";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:9:"is_banned";s:11:"description";s:42:"Find out if the given member ID is banned.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:28:"Whether the member is banned";}}s:11:"get_emo_dir";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_emo_dir";s:11:"description";s:35:"Find the base URL to the emoticons.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:12:"The base URL";}}s:14:"find_emoticons";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"find_emoticons";s:11:"description";s:162:"Get a map between emoticon codes and templates representing the HTML-image-code for this emoticon. The emoticons presented of course depend on the forum involved.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:7:"The map";}}s:13:"get_skin_list";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_skin_list";s:11:"description";s:44:"Find a list of all forum skins (aka themes).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"The list of skins";}}s:10:"_get_theme";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:20:"skip_member_specific";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:39:"Whether to avoid member-specific lookup";s:11:"phpdoc_name";s:20:"skip_member_specific";}}s:4:"name";s:10:"_get_theme";s:11:"description";s:395:"Try to find the theme that the logged-in/guest member is using, and map it to a Composr theme.The themes/map.ini file functions to provide this mapping between forum themes, and Composr themes, and has a slightly different meaning for different forum drivers. For example, some drivers map the forum themes theme directory to the Composr theme name, while others made the humanly readeable name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:9:"The theme";}}s:9:"_is_staff";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:9:"_is_staff";s:11:"description";s:58:"Find if the specified member ID is marked as staff or not.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether the member is staff";}}s:15:"_is_super_admin";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:15:"_is_super_admin";s:11:"description";s:66:"Find if the specified member ID is marked as a super admin or not.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:35:"Whether the member is a super admin";}}s:21:"_disable_staff_filter";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"_disable_staff_filter";s:11:"description";s:208:"If we can't get a list of admins via a usergroup query, we have to disable the staff filter - else the staff filtering can cause disaster at the point of being turned on (because it can't automatically sync).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:35:"Whether to disable the staff filter";}}s:20:"get_num_users_forums";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"get_num_users_forums";s:11:"description";s:57:"Get the number of members currently online on the forums.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:21:"The number of members";}}s:11:"get_members";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_members";s:11:"description";s:50:"Get the number of members registered on the forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:21:"The number of members";}}s:10:"get_topics";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"get_topics";s:11:"description";s:44:"Get the total topics ever made on the forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:20:"The number of topics";}}s:19:"get_num_forum_posts";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"get_num_forum_posts";s:11:"description";s:43:"Get the total posts ever made on the forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:19:"The number of posts";}}s:24:"_get_num_new_forum_posts";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"_get_num_new_forum_posts";s:11:"description";s:34:"Get the number of new forum posts.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:19:"The number of posts";}}s:24:"get_member_from_username";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:15:"The member name";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:24:"get_member_from_username";s:11:"description";s:49:"Get a member ID from the given member's username.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";}}s:23:"_get_super_admin_groups";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"_get_super_admin_groups";s:11:"description";s:32:"Get the IDs of the admin groups.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:19:"The admin group IDs";}}s:21:"_get_moderator_groups";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"_get_moderator_groups";s:11:"description";s:203:"Get the IDs of the moderator groups.It should not be assumed that a member only has one group - this depends upon the forum the driver works for. It also does not take the staff site filter into account.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"The moderator group IDs";}}s:19:"_get_usergroup_list";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"_get_usergroup_list";s:11:"description";s:29:"Get the forum usergroup list.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:18:"The usergroup list";}}s:19:"_get_members_groups";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:19:"_get_members_groups";s:11:"description";s:60:"Get the forum usergroup relating to the specified member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:29:"The array of forum usergroups";}}s:19:"forum_create_cookie";a:5:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:27:"The username (null: lookup)";s:11:"phpdoc_name";s:4:"name";}i:2;a:5:{s:4:"name";s:8:"password";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"The password";s:11:"phpdoc_name";s:8:"password";}}s:4:"name";s:19:"forum_create_cookie";s:11:"description";s:29:"Create a member login cookie.";s:5:"flags";a:0:{}}s:21:"forum_authorise_login";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"username";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:104:"The member username (null: don't use this in the authentication - but look it up using the ID if needed)";s:11:"phpdoc_name";s:8:"username";}i:1;a:5:{s:4:"name";s:6:"userid";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"userid";}i:2;a:5:{s:4:"name";s:15:"password_hashed";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:23:"The md5-hashed password";s:11:"phpdoc_name";s:15:"password_hashed";}i:3;a:5:{s:4:"name";s:12:"password_raw";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:16:"The raw password";s:11:"phpdoc_name";s:12:"password_raw";}i:4;a:7:{s:4:"name";s:12:"cookie_login";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether this is a cookie login";s:11:"phpdoc_name";s:12:"cookie_login";}}s:4:"name";s:21:"forum_authorise_login";s:11:"description";s:294:"Find if the given member ID and password is valid. If username is null, then the member ID is used instead.All authorisation, cookies, and form-logins, are passed through this function.Some forums do cookie logins differently, so a Boolean is passed in to indicate whether it is a cookie login.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:80:"A map of 'id' and 'error'. If 'id' is null, an error occurred and 'error' is set";}}s:13:"salt_password";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"password";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:22:"The md5()'ed password.";s:11:"phpdoc_name";s:8:"password";}i:1;a:5:{s:4:"name";s:4:"salt";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:9:"The salt.";s:11:"phpdoc_name";s:4:"salt";}}s:4:"name";s:13:"salt_password";s:11:"description";s:42:"Salts a password based on a supplied salt.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:18:"The password hash.";}}s:13:"get_member_ip";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:13:"get_member_ip";s:11:"description";s:49:"Get a first known IP address of the given member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:2:"IP";s:11:"description";s:14:"The IP address";}}s:14:"get_member_row";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:14:"get_member_row";s:11:"description";s:42:"Gets a whole member row from the database.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:37:"The member row (null: no such member)";}}s:20:"get_member_row_field";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:20:"The field identifier";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:20:"get_member_row_field";s:11:"description";s:53:"Gets a named field of a member row from the database.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:9:"The field";}}s:10:"get_member";a:6:{s:8:"filename";s:22:"sources/forum/mybb.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"get_member";s:11:"description";s:26:"Custom get member function";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:38:"The member or the default guest ID (0)";}}}s:4:"name";s:17:"Forum_driver_mybb";s:7:"comment";b:1;}s:17:"Forum_driver_none";a:3:{s:9:"functions";a:65:{s:18:"get_admin_username";a:6:{s:8:"filename";s:22:"sources/forum/none.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"get_admin_username";s:11:"description";s:45:"Get the administration username for the site.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:18:"The admin username";}}s:15:"get_top_posters";a:6:{s:8:"filename";s:22:"sources/forum/none.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"limit";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:47:"The limit to the number of top posters to fetch";s:11:"phpdoc_name";s:5:"limit";}}s:4:"name";s:15:"get_top_posters";s:11:"description";s:62:"Get the rows for the top given number of posters on the forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:57:"The rows for the given number of top posters in the forum";}}s:14:"forum_get_lang";a:6:{s:8:"filename";s:22:"sources/forum/none.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:45:"The member who's language needs to be fetched";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:14:"forum_get_lang";s:11:"description";s:135:"Attempt to to find the member's language from their forum profile. It converts between language-identifiers using a map (lang/map.ini).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:14:"?LANGUAGE_NAME";s:11:"description";s:37:"The member's language (null: unknown)";}}s:9:"is_hashed";a:6:{s:8:"filename";s:22:"sources/forum/none.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"is_hashed";s:11:"description";s:35:"Find if login cookie is md5-hashed.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether the login cookie is md5-hashed";}}s:20:"is_cookie_login_name";a:6:{s:8:"filename";s:22:"sources/forum/none.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"is_cookie_login_name";s:11:"description";s:74:"Find if the login cookie contains the login name instead of the member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:61:"Whether the login cookie contains a login name or a member ID";}}s:12:"get_guest_id";a:6:{s:8:"filename";s:22:"sources/forum/none.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"get_guest_id";s:11:"description";s:45:"Find the member ID of the forum guest member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"MEMBER";s:11:"description";s:39:"The member ID of the forum guest member";}}s:27:"install_create_custom_field";a:6:{s:8:"filename";s:22:"sources/forum/none.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:32:"The name of the new custom field";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:6:"length";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:34:"The length of the new custom field";s:11:"phpdoc_name";s:6:"length";}}s:4:"name";s:27:"install_create_custom_field";s:11:"description";s:145:"Add the specified custom field to the forum (some forums implemented this using proper custom profile fields, others through adding a new field).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether the custom field was created successfully";}}s:17:"install_specifics";a:6:{s:8:"filename";s:22:"sources/forum/none.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"install_specifics";s:11:"description";s:435:"Get an array of attributes to take in from the installer. Almost all forums require a table prefix, which the requirement there-of is defined through this function.The attributes have 4 values in an array- name, the name of the attribute for _config.php- default, the default value (perhaps obtained through autodetection from forum config)- description, a textual description of the attributes- title, a textual title of the attribute";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:28:"The attributes for the forum";}}s:22:"install_test_load_from";a:6:{s:8:"filename";s:22:"sources/forum/none.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:27:"The path in which to search";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:22:"install_test_load_from";s:11:"description";s:44:"Searches for forum auto-config at this path.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:44:"Whether the forum auto-config could be found";}}s:28:"install_get_path_search_list";a:6:{s:8:"filename";s:22:"sources/forum/none.php";s:10:"parameters";a:0:{}s:4:"name";s:28:"install_get_path_search_list";s:11:"description";s:46:"Get an array of paths to search for config at.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:49:"The paths in which to search for the forum config";}}s:20:"get_emoticon_chooser";a:6:{s:8:"filename";s:22:"sources/forum/none.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:10:"field_name";s:7:"default";s:4:"post";s:11:"default_raw";s:6:"'post'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:53:"The ID of the form field the emoticon chooser adds to";s:11:"phpdoc_name";s:10:"field_name";}}s:4:"name";s:20:"get_emoticon_chooser";s:11:"description";s:33:"Get an emoticon chooser template.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:29:"The emoticon chooser template";}}s:11:"get_emo_dir";a:6:{s:8:"filename";s:22:"sources/forum/none.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_emo_dir";s:11:"description";s:35:"Find the base URL to the emoticons.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:12:"The base URL";}}s:14:"find_emoticons";a:6:{s:8:"filename";s:22:"sources/forum/none.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"find_emoticons";s:11:"description";s:162:"Get a map between emoticon codes and templates representing the HTML-image-code for this emoticon. The emoticons presented of course depend on the forum involved.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:7:"The map";}}s:16:"set_custom_field";a:5:{s:8:"filename";s:22:"sources/forum/none.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:77:"The field name (e.g. "firstname" for the CPF with a title of "cms_firstname")";s:11:"phpdoc_name";s:5:"field";}i:2;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:9:"The value";s:11:"phpdoc_name";s:5:"value";}}s:4:"name";s:16:"set_custom_field";s:11:"description";s:110:"Set a custom profile field's value, if the custom field exists. Only works on specially-named (titled) fields.";s:5:"flags";a:0:{}}s:17:"get_custom_fields";a:6:{s:8:"filename";s:22:"sources/forum/none.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:17:"get_custom_fields";s:11:"description";s:62:"Get custom profile fields values for all 'cms_' prefixed keys.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:71:"A map of the custom profile fields, key_suffix=>value (null: no fields)";}}s:8:"get_mrow";a:6:{s:8:"filename";s:22:"sources/forum/none.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:15:"The member name";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:8:"get_mrow";s:11:"description";s:50:"Get a member row for the member of the given name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:30:"The profile-row (null: no row)";}}s:14:"get_member_row";a:6:{s:8:"filename";s:22:"sources/forum/none.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:14:"get_member_row";s:11:"description";s:17:"Get a member row.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";}}s:20:"get_member_row_field";a:6:{s:8:"filename";s:22:"sources/forum/none.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:9:"The field";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:20:"get_member_row_field";s:11:"description";s:17:"Get a member row.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:26:"The result (null: unknown)";}}s:10:"mrow_group";a:6:{s:8:"filename";s:22:"sources/forum/none.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"r";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:10:"mrow_group";s:11:"description";s:54:"From a member row, get the member's primary usergroup.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"GROUP";s:11:"description";s:30:"The member's primary usergroup";}}s:7:"mrow_id";a:6:{s:8:"filename";s:22:"sources/forum/none.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"r";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:7:"mrow_id";s:11:"description";s:46:"From a member row, get the member's member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";}}s:14:"mrow_lastvisit";a:6:{s:8:"filename";s:22:"sources/forum/none.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"r";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:14:"mrow_lastvisit";s:11:"description";s:52:"From a member row, get the member's last visit date.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:4:"TIME";s:11:"description";s:19:"The last visit date";}}s:13:"mrow_username";a:6:{s:8:"filename";s:22:"sources/forum/none.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"r";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:13:"mrow_username";s:11:"description";s:41:"From a member row, get the member's name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:15:"The member name";}}s:10:"mrow_email";a:6:{s:8:"filename";s:22:"sources/forum/none.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"r";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:10:"mrow_email";s:11:"description";s:51:"From a member row, get the member's e-mail address.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:25:"The member e-mail address";}}s:15:"member_home_url";a:6:{s:8:"filename";s:22:"sources/forum/none.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:15:"member_home_url";s:11:"description";s:57:"Get a URL to the specified member's home (control panel).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:27:"The URL to the members home";}}s:20:"get_member_photo_url";a:6:{s:8:"filename";s:22:"sources/forum/none.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:20:"get_member_photo_url";s:11:"description";s:56:"Get the photo thumbnail URL for the specified member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:21:"The URL (blank: none)";}}s:21:"get_member_avatar_url";a:6:{s:8:"filename";s:22:"sources/forum/none.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:21:"get_member_avatar_url";s:11:"description";s:47:"Get the avatar URL for the specified member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:21:"The URL (blank: none)";}}s:19:"_member_profile_url";a:6:{s:8:"filename";s:22:"sources/forum/none.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:19:"_member_profile_url";s:11:"description";s:44:"Get a URL to the specified member's profile.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:29:"The URL to the member profile";}}s:9:"_join_url";a:6:{s:8:"filename";s:22:"sources/forum/none.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"_join_url";s:11:"description";s:74:"Get a URL to the registration page (for people to create member accounts).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:32:"The URL to the registration page";}}s:17:"_users_online_url";a:6:{s:8:"filename";s:22:"sources/forum/none.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"_users_online_url";s:11:"description";s:37:"Get a URL to the members-online page.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:34:"The URL to the members-online page";}}s:14:"_member_pm_url";a:6:{s:8:"filename";s:22:"sources/forum/none.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:14:"_member_pm_url";s:11:"description";s:65:"Get a URL to send a private/personal message to the given member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:44:"The URL to the private/personal message page";}}s:10:"_forum_url";a:6:{s:8:"filename";s:22:"sources/forum/none.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:12:"The forum ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:10:"_forum_url";s:11:"description";s:33:"Get a URL to the specified forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:30:"The URL to the specified forum";}}s:18:"forum_id_from_name";a:6:{s:8:"filename";s:22:"sources/forum/none.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:10:"forum_name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:14:"The forum name";s:11:"phpdoc_name";s:10:"forum_name";}}s:4:"name";s:18:"forum_id_from_name";s:11:"description";s:35:"Get the forum ID from a forum name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?integer";s:11:"description";s:30:"The forum ID (null: not found)";}}s:34:"find_topic_id_for_topic_identifier";a:6:{s:8:"filename";s:22:"sources/forum/none.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"forum";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:19:"The forum name / ID";s:11:"phpdoc_name";s:5:"forum";}i:1;a:5:{s:4:"name";s:16:"topic_identifier";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:20:"The topic identifier";s:11:"phpdoc_name";s:16:"topic_identifier";}}s:4:"name";s:34:"find_topic_id_for_topic_identifier";s:11:"description";s:157:"Get the topic ID from a topic identifier in the specified forum. It is used by comment topics, which means that the unique-topic-name assumption holds valid.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?integer";s:11:"description";s:30:"The topic ID (null: not found)";}}s:21:"make_post_forum_topic";a:6:{s:8:"filename";s:22:"sources/forum/none.php";s:10:"parameters";a:16:{i:0;a:5:{s:4:"name";s:10:"forum_name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:14:"The forum name";s:11:"phpdoc_name";s:10:"forum_name";}i:1;a:5:{s:4:"name";s:16:"topic_identifier";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:58:"The topic identifier (usually _)";s:11:"phpdoc_name";s:16:"topic_identifier";}i:2;a:5:{s:4:"name";s:9:"member_id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:9:"member_id";}i:3;a:5:{s:4:"name";s:10:"post_title";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:14:"The post title";s:11:"phpdoc_name";s:10:"post_title";}i:4;a:5:{s:4:"name";s:5:"_post";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:34:"The post content in Comcode format";s:11:"phpdoc_name";s:5:"_post";}i:5;a:5:{s:4:"name";s:13:"content_title";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:77:"The topic title; must be same as content title if this is for a comment topic";s:11:"phpdoc_name";s:13:"content_title";}i:6;a:5:{s:4:"name";s:37:"topic_identifier_encapsulation_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:204:"This is put together with the topic identifier to make a more-human-readable topic title or topic description (hopefully the latter and a $content_title title, but only if the forum supports descriptions)";s:11:"phpdoc_name";s:37:"topic_identifier_encapsulation_prefix";}i:7;a:7:{s:4:"name";s:11:"content_url";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?URLPATH";s:11:"description";s:50:"URL to the content (null: do not make spacer post)";s:11:"phpdoc_name";s:11:"content_url";}i:8;a:7:{s:4:"name";s:4:"time";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:5:"?TIME";s:11:"description";s:38:"The post time (null: use current time)";s:11:"phpdoc_name";s:4:"time";}i:9;a:7:{s:4:"name";s:2:"ip";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:3:"?IP";s:11:"description";s:58:"The post IP address (null: use current members IP address)";s:11:"phpdoc_name";s:2:"ip";}i:10;a:7:{s:4:"name";s:9:"validated";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:146:"Whether the post is validated (null: unknown, find whether it needs to be marked unvalidated initially). This only works with the Conversr driver.";s:11:"phpdoc_name";s:9:"validated";}i:11;a:7:{s:4:"name";s:15:"topic_validated";s:7:"default";i:1;s:11:"default_raw";s:1:"1";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:147:"Whether the topic is validated (null: unknown, find whether it needs to be marked unvalidated initially). This only works with the Conversr driver.";s:11:"phpdoc_name";s:15:"topic_validated";}i:12;a:7:{s:4:"name";s:16:"skip_post_checks";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether to skip post checks";s:11:"phpdoc_name";s:16:"skip_post_checks";}i:13;a:7:{s:4:"name";s:20:"poster_name_if_guest";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:22:"The name of the poster";s:11:"phpdoc_name";s:20:"poster_name_if_guest";}i:14;a:7:{s:4:"name";s:9:"parent_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:39:"ID of post being replied to (null: N/A)";s:11:"phpdoc_name";s:9:"parent_id";}i:15;a:7:{s:4:"name";s:10:"staff_only";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:42:"Whether the reply is only visible to staff";s:11:"phpdoc_name";s:10:"staff_only";}}s:4:"name";s:21:"make_post_forum_topic";s:11:"description";s:466:"Makes a post in the specified forum, in the specified topic according to the given specifications. If the topic doesn't exist, it is created along with a spacer-post.Spacer posts exist in order to allow staff to delete the first true post in a topic. Without spacers, this would not be possible with most forum systems. They also serve to provide meta information on the topic that cannot be encoded in the title (such as a link to the content being commented upon).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:63:"Topic ID (may be null), and whether a hidden post has been made";}}s:21:"get_forum_topic_posts";a:6:{s:8:"filename";s:22:"sources/forum/none.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"topic_id";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:12:"The topic ID";s:11:"phpdoc_name";s:8:"topic_id";}}s:4:"name";s:21:"get_forum_topic_posts";s:11:"description";s:54:"Get an array of maps for the topic in the given forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:106:"The array of maps (Each map is: title, message, member, date) (-1 for no such forum, -2 for no such topic)";}}s:9:"topic_url";a:6:{s:8:"filename";s:22:"sources/forum/none.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:12:"The topic ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:5:"forum";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"The forum ID";s:11:"phpdoc_name";s:5:"forum";}}s:4:"name";s:9:"topic_url";s:11:"description";s:133:"Get a URL to the specified topic ID. Most forums don't require the second parameter, but some do, so it is required in the interface.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:20:"The URL to the topic";}}s:8:"post_url";a:6:{s:8:"filename";s:22:"sources/forum/none.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:11:"The post ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:5:"forum";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"The forum ID";s:11:"phpdoc_name";s:5:"forum";}}s:4:"name";s:8:"post_url";s:11:"description";s:35:"Get a URL to the specified post ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:19:"The URL to the post";}}s:17:"show_forum_topics";a:6:{s:8:"filename";s:22:"sources/forum/none.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:14:"The forum name";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:5:"limit";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:9:"The limit";s:11:"phpdoc_name";s:5:"limit";}i:2;a:5:{s:4:"name";s:5:"start";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:18:"The start position";s:11:"phpdoc_name";s:5:"start";}i:3;a:5:{s:4:"name";s:8:"max_rows";s:3:"ref";b:1;s:4:"type";s:7:"integer";s:11:"description";s:54:"The total rows (not a parameter: returns by reference)";s:11:"phpdoc_name";s:8:"max_rows";}i:4;a:7:{s:4:"name";s:18:"filter_topic_title";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:22:"The topic title filter";s:11:"phpdoc_name";s:18:"filter_topic_title";}i:5;a:7:{s:4:"name";s:16:"show_first_posts";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether to show the first posts";s:11:"phpdoc_name";s:16:"show_first_posts";}i:6;a:8:{s:4:"name";s:8:"date_key";s:7:"default";s:8:"lasttime";s:11:"default_raw";s:10:"'lasttime'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"The date key to sort by";s:11:"phpdoc_name";s:8:"date_key";s:3:"set";s:18:"lasttime firsttime";}i:7;a:7:{s:4:"name";s:3:"hot";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether to limit to hot topics";s:11:"phpdoc_name";s:3:"hot";}i:8;a:7:{s:4:"name";s:24:"filter_topic_description";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:28:"The topic description filter";s:11:"phpdoc_name";s:24:"filter_topic_description";}}s:4:"name";s:17:"show_forum_topics";s:11:"description";s:405:"Get an array of topics in the given forum. Each topic is an array with the following attributes:- id, the topic ID- title, the topic title- lastusername, the username of the last poster- lasttime, the timestamp of the last reply- closed, a Boolean for whether the topic is currently closed or not- firsttitle, the title of the first post- firstpost, the first post (only set if $show_first_posts was true)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:33:"The array of topics (null: error)";}}s:18:"member_group_query";a:6:{s:8:"filename";s:22:"sources/forum/none.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:6:"groups";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:23:"The array of usergroups";s:11:"phpdoc_name";s:6:"groups";}i:1;a:7:{s:4:"name";s:3:"max";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:170:"Return up to this many entries for primary members and this many entries for secondary members (null: no limit, only use no limit if querying very restricted usergroups!)";s:11:"phpdoc_name";s:3:"max";}i:2;a:7:{s:4:"name";s:5:"start";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:80:"Return primary members after this offset and secondary members after this offset";s:11:"phpdoc_name";s:5:"start";}}s:4:"name";s:18:"member_group_query";s:11:"description";s:81:"Get an array of members who are in at least one of the given array of usergroups.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:39:"The array of members (null: no members)";}}s:19:"get_previous_member";a:6:{s:8:"filename";s:22:"sources/forum/none.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:26:"The member ID to decrement";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:19:"get_previous_member";s:11:"description";s:53:"This is the opposite of the get_next_member function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?MEMBER";s:11:"description";s:49:"The previous member ID (null: no previous member)";}}s:15:"get_next_member";a:6:{s:8:"filename";s:22:"sources/forum/none.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:26:"The member ID to increment";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:15:"get_next_member";s:11:"description";s:146:"Get the member ID of the next member after the given one, or null.It cannot be assumed there are no gaps in member IDs, as members may be deleted.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?MEMBER";s:11:"description";s:41:"The next member ID (null: no next member)";}}s:8:"probe_ip";a:6:{s:8:"filename";s:22:"sources/forum/none.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"ip";s:3:"ref";b:0;s:4:"type";s:2:"IP";s:11:"description";s:14:"The IP address";s:11:"phpdoc_name";s:2:"ip";}}s:4:"name";s:8:"probe_ip";s:11:"description";s:46:"Try to find a member with the given IP address";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"The distinct rows found";}}s:13:"_get_username";a:6:{s:8:"filename";s:22:"sources/forum/none.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:13:"_get_username";s:11:"description";s:152:"Get the name relating to the specified member ID.If this returns null, then the member has been deleted. Always take potential null output into account.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:38:"The member name (null: member deleted)";}}s:25:"_get_member_email_address";a:6:{s:8:"filename";s:22:"sources/forum/none.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:25:"_get_member_email_address";s:11:"description";s:51:"Get the e-mail address for the specified member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:18:"The e-mail address";}}s:24:"get_member_email_allowed";a:6:{s:8:"filename";s:22:"sources/forum/none.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:24:"get_member_email_allowed";s:11:"description";s:49:"Find if this member may have e-mails sent to them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:48:"Whether the member may have e-mails sent to them";}}s:25:"get_member_join_timestamp";a:6:{s:8:"filename";s:22:"sources/forum/none.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:25:"get_member_join_timestamp";s:11:"description";s:42:"Get the timestamp of a member's join date.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:4:"TIME";s:11:"description";s:13:"The timestamp";}}s:20:"get_matching_members";a:6:{s:8:"filename";s:22:"sources/forum/none.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:7:"pattern";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:11:"The pattern";s:11:"phpdoc_name";s:7:"pattern";}i:1;a:7:{s:4:"name";s:5:"limit";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:76:"Maximum number to return (limits to the most recent active) (null: no limit)";s:11:"phpdoc_name";s:5:"limit";}}s:4:"name";s:20:"get_matching_members";s:11:"description";s:64:"Find all members with a name matching the given SQL LIKE string.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:47:"The array of matched members (null: none found)";}}s:14:"get_post_count";a:6:{s:8:"filename";s:22:"sources/forum/none.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:14:"get_post_count";s:11:"description";s:34:"Get the given member's post count.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:14:"The post count";}}s:15:"get_topic_count";a:6:{s:8:"filename";s:22:"sources/forum/none.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:15:"get_topic_count";s:11:"description";s:35:"Get the given member's topic count.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"The topic count";}}s:9:"is_banned";a:6:{s:8:"filename";s:22:"sources/forum/none.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:9:"is_banned";s:11:"description";s:42:"Find out if the given member ID is banned.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:28:"Whether the member is banned";}}s:10:"_get_theme";a:6:{s:8:"filename";s:22:"sources/forum/none.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"_get_theme";s:11:"description";s:395:"Try to find the theme that the logged-in/guest member is using, and map it to a Composr theme.The themes/map.ini file functions to provide this mapping between forum themes, and Composr themes, and has a slightly different meaning for different forum drivers. For example, some drivers map the forum themes theme directory to the Composr theme name, while others made the humanly readeable name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:9:"The theme";}}s:9:"_is_staff";a:6:{s:8:"filename";s:22:"sources/forum/none.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:9:"_is_staff";s:11:"description";s:58:"Find if the specified member ID is marked as staff or not.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether the member is staff";}}s:15:"_is_super_admin";a:6:{s:8:"filename";s:22:"sources/forum/none.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:15:"_is_super_admin";s:11:"description";s:66:"Find if the specified member ID is marked as a super admin or not.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:35:"Whether the member is a super admin";}}s:20:"get_num_users_forums";a:6:{s:8:"filename";s:22:"sources/forum/none.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"get_num_users_forums";s:11:"description";s:57:"Get the number of members currently online on the forums.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?integer";s:11:"description";s:32:"The number of members (null: NA)";}}s:11:"get_members";a:6:{s:8:"filename";s:22:"sources/forum/none.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_members";s:11:"description";s:50:"Get the number of members registered on the forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:21:"The number of members";}}s:10:"get_topics";a:6:{s:8:"filename";s:22:"sources/forum/none.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"get_topics";s:11:"description";s:44:"Get the total topics ever made on the forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:20:"The number of topics";}}s:19:"get_num_forum_posts";a:6:{s:8:"filename";s:22:"sources/forum/none.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"get_num_forum_posts";s:11:"description";s:43:"Get the total posts ever made on the forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:19:"The number of posts";}}s:24:"_get_num_new_forum_posts";a:6:{s:8:"filename";s:22:"sources/forum/none.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"_get_num_new_forum_posts";s:11:"description";s:34:"Get the number of new forum posts.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:19:"The number of posts";}}s:24:"get_member_from_username";a:6:{s:8:"filename";s:22:"sources/forum/none.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:15:"The member name";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:24:"get_member_from_username";s:11:"description";s:49:"Get a member ID from the given member's username.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";}}s:23:"_get_super_admin_groups";a:6:{s:8:"filename";s:22:"sources/forum/none.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"_get_super_admin_groups";s:11:"description";s:36:"Get the IDs of the admin usergroups.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"The admin usergroup IDs";}}s:21:"_get_moderator_groups";a:6:{s:8:"filename";s:22:"sources/forum/none.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"_get_moderator_groups";s:11:"description";s:211:"Get the IDs of the moderator usergroups.It should not be assumed that a member only has one usergroup - this depends upon the forum the driver works for. It also does not take the staff site filter into account.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:27:"The moderator usergroup IDs";}}s:19:"_get_usergroup_list";a:6:{s:8:"filename";s:22:"sources/forum/none.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"_get_usergroup_list";s:11:"description";s:29:"Get the forum usergroup list.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:18:"The usergroup list";}}s:19:"_get_members_groups";a:6:{s:8:"filename";s:22:"sources/forum/none.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:19:"_get_members_groups";s:11:"description";s:60:"Get the forum usergroup relating to the specified member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:29:"The array of forum usergroups";}}s:21:"forum_authorise_login";a:6:{s:8:"filename";s:22:"sources/forum/none.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"username";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:104:"The member username (null: don't use this in the authentication - but look it up using the ID if needed)";s:11:"phpdoc_name";s:8:"username";}i:1;a:5:{s:4:"name";s:6:"userid";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"userid";}i:2;a:5:{s:4:"name";s:15:"password_hashed";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:23:"The md5-hashed password";s:11:"phpdoc_name";s:15:"password_hashed";}i:3;a:5:{s:4:"name";s:12:"password_raw";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:16:"The raw password";s:11:"phpdoc_name";s:12:"password_raw";}i:4;a:7:{s:4:"name";s:12:"cookie_login";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether this is a cookie login";s:11:"phpdoc_name";s:12:"cookie_login";}}s:4:"name";s:21:"forum_authorise_login";s:11:"description";s:294:"Find if the given member ID and password is valid. If username is null, then the member ID is used instead.All authorisation, cookies, and form-logins, are passed through this function.Some forums do cookie logins differently, so a Boolean is passed in to indicate whether it is a cookie login.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:80:"A map of 'id' and 'error'. If 'id' is null, an error occurred and 'error' is set";}}s:13:"get_member_ip";a:6:{s:8:"filename";s:22:"sources/forum/none.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:13:"get_member_ip";s:11:"description";s:49:"Get a first known IP address of the given member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:2:"IP";s:11:"description";s:14:"The IP address";}}}s:4:"name";s:17:"Forum_driver_none";s:7:"comment";b:1;}s:19:"Forum_driver_phpbb2";a:3:{s:9:"functions";a:72:{s:8:"check_db";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:0:{}s:4:"name";s:8:"check_db";s:11:"description";s:54:"Check the connected DB is valid for this forum driver.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:19:"Whether it is valid";}}s:15:"get_top_posters";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"limit";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:47:"The limit to the number of top posters to fetch";s:11:"phpdoc_name";s:5:"limit";}}s:4:"name";s:15:"get_top_posters";s:11:"description";s:62:"Get the rows for the top given number of posters on the forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:57:"The rows for the given number of top posters in the forum";}}s:14:"forum_get_lang";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:45:"The member who's language needs to be fetched";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:14:"forum_get_lang";s:11:"description";s:135:"Attempt to to find the member's language from their forum profile. It converts between language-identifiers using a map (lang/map.ini).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:14:"?LANGUAGE_NAME";s:11:"description";s:37:"The member's language (null: unknown)";}}s:20:"is_cookie_login_name";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"is_cookie_login_name";s:11:"description";s:74:"Find if the login cookie contains the login name instead of the member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:61:"Whether the login cookie contains a login name or a member ID";}}s:9:"is_hashed";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"is_hashed";s:11:"description";s:35:"Find if login cookie is md5-hashed.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether the login cookie is md5-hashed";}}s:12:"get_guest_id";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"get_guest_id";s:11:"description";s:45:"Find the member ID of the forum guest member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"MEMBER";s:11:"description";s:39:"The member ID of the forum guest member";}}s:25:"get_drivered_table_prefix";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"get_drivered_table_prefix";s:11:"description";s:46:"Get the forums' table prefix for the database.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:31:"The forum database table prefix";}}s:27:"install_create_custom_field";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:32:"The name of the new custom field";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:6:"length";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:34:"The length of the new custom field";s:11:"phpdoc_name";s:6:"length";}}s:4:"name";s:27:"install_create_custom_field";s:11:"description";s:145:"Add the specified custom field to the forum (some forums implemented this using proper custom profile fields, others through adding a new field).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether the custom field was created successfully";}}s:17:"install_specifics";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"install_specifics";s:11:"description";s:435:"Get an array of attributes to take in from the installer. Almost all forums require a table prefix, which the requirement there-of is defined through this function.The attributes have 4 values in an array- name, the name of the attribute for _config.php- default, the default value (perhaps obtained through autodetection from forum config)- description, a textual description of the attributes- title, a textual title of the attribute";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:28:"The attributes for the forum";}}s:22:"install_test_load_from";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:27:"The path in which to search";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:22:"install_test_load_from";s:11:"description";s:44:"Searches for forum auto-config at this path.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:44:"Whether the forum auto-config could be found";}}s:28:"install_get_path_search_list";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:0:{}s:4:"name";s:28:"install_get_path_search_list";s:11:"description";s:46:"Get an array of paths to search for config at.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:49:"The paths in which to search for the forum config";}}s:20:"get_emoticon_chooser";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:10:"field_name";s:7:"default";s:4:"post";s:11:"default_raw";s:6:"'post'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:53:"The ID of the form field the emoticon chooser adds to";s:11:"phpdoc_name";s:10:"field_name";}}s:4:"name";s:20:"get_emoticon_chooser";s:11:"description";s:33:"Get an emoticon chooser template.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:29:"The emoticon chooser template";}}s:9:"pin_topic";a:5:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:12:"The topic ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:3:"pin";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"True: pin it, False: unpin it";s:11:"phpdoc_name";s:3:"pin";}}s:4:"name";s:9:"pin_topic";s:11:"description";s:12:"Pin a topic.";s:5:"flags";a:0:{}}s:16:"set_custom_field";a:5:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:77:"The field name (e.g. "firstname" for the CPF with a title of "cms_firstname")";s:11:"phpdoc_name";s:5:"field";}i:2;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:9:"The value";s:11:"phpdoc_name";s:5:"value";}}s:4:"name";s:16:"set_custom_field";s:11:"description";s:110:"Set a custom profile field's value, if the custom field exists. Only works on specially-named (titled) fields.";s:5:"flags";a:0:{}}s:17:"get_custom_fields";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:17:"get_custom_fields";s:11:"description";s:62:"Get custom profile fields values for all 'cms_' prefixed keys.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:71:"A map of the custom profile fields, key_suffix=>value (null: no fields)";}}s:8:"get_mrow";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:15:"The member name";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:8:"get_mrow";s:11:"description";s:50:"Get a member row for the member of the given name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:33:"The profile-row (null: not found)";}}s:10:"mrow_group";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"r";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:10:"mrow_group";s:11:"description";s:54:"From a member row, get the member's primary usergroup.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"GROUP";s:11:"description";s:30:"The member's primary usergroup";}}s:7:"mrow_id";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"r";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:7:"mrow_id";s:11:"description";s:46:"From a member row, get the member's member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";}}s:14:"mrow_lastvisit";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"r";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:14:"mrow_lastvisit";s:11:"description";s:52:"From a member row, get the member's last visit date.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:4:"TIME";s:11:"description";s:19:"The last visit date";}}s:13:"mrow_username";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"r";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:13:"mrow_username";s:11:"description";s:41:"From a member row, get the member's name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:15:"The member name";}}s:10:"mrow_email";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"r";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:10:"mrow_email";s:11:"description";s:51:"From a member row, get the member's e-mail address.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:25:"The member e-mail address";}}s:15:"member_home_url";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:15:"member_home_url";s:11:"description";s:57:"Get a URL to the specified member's home (control panel).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:27:"The URL to the members home";}}s:20:"get_member_photo_url";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:20:"get_member_photo_url";s:11:"description";s:56:"Get the photo thumbnail URL for the specified member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:21:"The URL (blank: none)";}}s:21:"get_member_avatar_url";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:21:"get_member_avatar_url";s:11:"description";s:47:"Get the avatar URL for the specified member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:21:"The URL (blank: none)";}}s:19:"_member_profile_url";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:19:"_member_profile_url";s:11:"description";s:44:"Get a URL to the specified member's profile.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:29:"The URL to the member profile";}}s:9:"_join_url";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"_join_url";s:11:"description";s:74:"Get a URL to the registration page (for people to create member accounts).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:32:"The URL to the registration page";}}s:17:"_users_online_url";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"_users_online_url";s:11:"description";s:37:"Get a URL to the members-online page.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:34:"The URL to the members-online page";}}s:14:"_member_pm_url";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:14:"_member_pm_url";s:11:"description";s:65:"Get a URL to send a private/personal message to the given member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:44:"The URL to the private/personal message page";}}s:10:"_forum_url";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:12:"The forum ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:10:"_forum_url";s:11:"description";s:33:"Get a URL to the specified forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:30:"The URL to the specified forum";}}s:18:"forum_id_from_name";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:10:"forum_name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:14:"The forum name";s:11:"phpdoc_name";s:10:"forum_name";}}s:4:"name";s:18:"forum_id_from_name";s:11:"description";s:35:"Get the forum ID from a forum name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?integer";s:11:"description";s:30:"The forum ID (null: not found)";}}s:9:"_phpbb_ip";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"ip";s:3:"ref";b:0;s:4:"type";s:2:"IP";s:11:"description";s:21:"The normal IP address";s:11:"phpdoc_name";s:2:"ip";}}s:4:"name";s:9:"_phpbb_ip";s:11:"description";s:59:"Convert an IP address into phpBB hexadecimal string format.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:20:"The phpBB IP address";}}s:12:"_un_phpbb_ip";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"ip";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:20:"The phpBB IP address";s:11:"phpdoc_name";s:2:"ip";}}s:4:"name";s:12:"_un_phpbb_ip";s:11:"description";s:59:"Convert an IP address from phpBB hexadecimal string format.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:2:"IP";s:11:"description";s:21:"The normal IP address";}}s:21:"make_post_forum_topic";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:16:{i:0;a:5:{s:4:"name";s:10:"forum_name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:14:"The forum name";s:11:"phpdoc_name";s:10:"forum_name";}i:1;a:5:{s:4:"name";s:16:"topic_identifier";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:58:"The topic identifier (usually _)";s:11:"phpdoc_name";s:16:"topic_identifier";}i:2;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}i:3;a:5:{s:4:"name";s:10:"post_title";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:14:"The post title";s:11:"phpdoc_name";s:10:"post_title";}i:4;a:5:{s:4:"name";s:5:"_post";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:34:"The post content in Comcode format";s:11:"phpdoc_name";s:5:"_post";}i:5;a:5:{s:4:"name";s:13:"content_title";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:77:"The topic title; must be same as content title if this is for a comment topic";s:11:"phpdoc_name";s:13:"content_title";}i:6;a:5:{s:4:"name";s:37:"topic_identifier_encapsulation_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:204:"This is put together with the topic identifier to make a more-human-readable topic title or topic description (hopefully the latter and a $content_title title, but only if the forum supports descriptions)";s:11:"phpdoc_name";s:37:"topic_identifier_encapsulation_prefix";}i:7;a:7:{s:4:"name";s:11:"content_url";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?URLPATH";s:11:"description";s:50:"URL to the content (null: do not make spacer post)";s:11:"phpdoc_name";s:11:"content_url";}i:8;a:7:{s:4:"name";s:4:"time";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:5:"?TIME";s:11:"description";s:38:"The post time (null: use current time)";s:11:"phpdoc_name";s:4:"time";}i:9;a:7:{s:4:"name";s:2:"ip";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:3:"?IP";s:11:"description";s:58:"The post IP address (null: use current members IP address)";s:11:"phpdoc_name";s:2:"ip";}i:10;a:7:{s:4:"name";s:9:"validated";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:146:"Whether the post is validated (null: unknown, find whether it needs to be marked unvalidated initially). This only works with the Conversr driver.";s:11:"phpdoc_name";s:9:"validated";}i:11;a:7:{s:4:"name";s:15:"topic_validated";s:7:"default";i:1;s:11:"default_raw";s:1:"1";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:147:"Whether the topic is validated (null: unknown, find whether it needs to be marked unvalidated initially). This only works with the Conversr driver.";s:11:"phpdoc_name";s:15:"topic_validated";}i:12;a:7:{s:4:"name";s:16:"skip_post_checks";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether to skip post checks";s:11:"phpdoc_name";s:16:"skip_post_checks";}i:13;a:7:{s:4:"name";s:20:"poster_name_if_guest";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:22:"The name of the poster";s:11:"phpdoc_name";s:20:"poster_name_if_guest";}i:14;a:7:{s:4:"name";s:9:"parent_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:39:"ID of post being replied to (null: N/A)";s:11:"phpdoc_name";s:9:"parent_id";}i:15;a:7:{s:4:"name";s:10:"staff_only";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:42:"Whether the reply is only visible to staff";s:11:"phpdoc_name";s:10:"staff_only";}}s:4:"name";s:21:"make_post_forum_topic";s:11:"description";s:466:"Makes a post in the specified forum, in the specified topic according to the given specifications. If the topic doesn't exist, it is created along with a spacer-post.Spacer posts exist in order to allow staff to delete the first true post in a topic. Without spacers, this would not be possible with most forum systems. They also serve to provide meta information on the topic that cannot be encoded in the title (such as a link to the content being commented upon).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:63:"Topic ID (may be null), and whether a hidden post has been made";}}s:21:"get_forum_topic_posts";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:8:"topic_id";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:12:"The topic ID";s:11:"phpdoc_name";s:8:"topic_id";}i:1;a:5:{s:4:"name";s:5:"count";s:3:"ref";b:1;s:4:"type";s:7:"integer";s:11:"description";s:52:"The comment count will be returned here by reference";s:11:"phpdoc_name";s:5:"count";}i:2;a:7:{s:4:"name";s:3:"max";s:7:"default";i:100;s:11:"default_raw";s:3:"100";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:28:"Maximum comments to returned";s:11:"phpdoc_name";s:3:"max";}i:3;a:7:{s:4:"name";s:5:"start";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:19:"Comment to start at";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:9:"mark_read";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:62:"Whether to mark the topic read (ignored for this forum driver)";s:11:"phpdoc_name";s:9:"mark_read";}i:5;a:7:{s:4:"name";s:7:"reverse";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:26:"Whether to show in reverse";s:11:"phpdoc_name";s:7:"reverse";}}s:4:"name";s:21:"get_forum_topic_posts";s:11:"description";s:54:"Get an array of maps for the topic in the given forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:106:"The array of maps (Each map is: title, message, member, date) (-1 for no such forum, -2 for no such topic)";}}s:9:"topic_url";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:12:"The topic ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:5:"forum";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"The forum ID";s:11:"phpdoc_name";s:5:"forum";}}s:4:"name";s:9:"topic_url";s:11:"description";s:133:"Get a URL to the specified topic ID. Most forums don't require the second parameter, but some do, so it is required in the interface.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:20:"The URL to the topic";}}s:8:"post_url";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:11:"The post ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:5:"forum";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"The forum ID";s:11:"phpdoc_name";s:5:"forum";}}s:4:"name";s:8:"post_url";s:11:"description";s:35:"Get a URL to the specified post ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:19:"The URL to the post";}}s:34:"find_topic_id_for_topic_identifier";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"forum";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:19:"The forum name / ID";s:11:"phpdoc_name";s:5:"forum";}i:1;a:5:{s:4:"name";s:16:"topic_identifier";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:20:"The topic identifier";s:11:"phpdoc_name";s:16:"topic_identifier";}}s:4:"name";s:34:"find_topic_id_for_topic_identifier";s:11:"description";s:157:"Get the topic ID from a topic identifier in the specified forum. It is used by comment topics, which means that the unique-topic-name assumption holds valid.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?integer";s:11:"description";s:30:"The topic ID (null: not found)";}}s:17:"show_forum_topics";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:39:"The forum name or an array of forum IDs";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:5:"limit";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:9:"The limit";s:11:"phpdoc_name";s:5:"limit";}i:2;a:5:{s:4:"name";s:5:"start";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:18:"The start position";s:11:"phpdoc_name";s:5:"start";}i:3;a:5:{s:4:"name";s:8:"max_rows";s:3:"ref";b:1;s:4:"type";s:7:"integer";s:11:"description";s:54:"The total rows (not a parameter: returns by reference)";s:11:"phpdoc_name";s:8:"max_rows";}i:4;a:7:{s:4:"name";s:18:"filter_topic_title";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:22:"The topic title filter";s:11:"phpdoc_name";s:18:"filter_topic_title";}i:5;a:7:{s:4:"name";s:16:"show_first_posts";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether to show the first posts";s:11:"phpdoc_name";s:16:"show_first_posts";}i:6;a:8:{s:4:"name";s:8:"date_key";s:7:"default";s:8:"lasttime";s:11:"default_raw";s:10:"'lasttime'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"The date key to sort by";s:11:"phpdoc_name";s:8:"date_key";s:3:"set";s:18:"lasttime firsttime";}i:7;a:7:{s:4:"name";s:3:"hot";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether to limit to hot topics";s:11:"phpdoc_name";s:3:"hot";}i:8;a:7:{s:4:"name";s:24:"filter_topic_description";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:28:"The topic description filter";s:11:"phpdoc_name";s:24:"filter_topic_description";}}s:4:"name";s:17:"show_forum_topics";s:11:"description";s:405:"Get an array of topics in the given forum. Each topic is an array with the following attributes:- id, the topic ID- title, the topic title- lastusername, the username of the last poster- lasttime, the timestamp of the last reply- closed, a Boolean for whether the topic is currently closed or not- firsttitle, the title of the first post- firstpost, the first post (only set if $show_first_posts was true)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:33:"The array of topics (null: error)";}}s:18:"member_group_query";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:6:"groups";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:23:"The array of usergroups";s:11:"phpdoc_name";s:6:"groups";}i:1;a:7:{s:4:"name";s:3:"max";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:170:"Return up to this many entries for primary members and this many entries for secondary members (null: no limit, only use no limit if querying very restricted usergroups!)";s:11:"phpdoc_name";s:3:"max";}i:2;a:7:{s:4:"name";s:5:"start";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:80:"Return primary members after this offset and secondary members after this offset";s:11:"phpdoc_name";s:5:"start";}}s:4:"name";s:18:"member_group_query";s:11:"description";s:81:"Get an array of members who are in at least one of the given array of usergroups.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:39:"The array of members (null: no members)";}}s:19:"get_previous_member";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:26:"The member ID to decrement";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:19:"get_previous_member";s:11:"description";s:53:"This is the opposite of the get_next_member function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?MEMBER";s:11:"description";s:49:"The previous member ID (null: no previous member)";}}s:15:"get_next_member";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:26:"The member ID to increment";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:15:"get_next_member";s:11:"description";s:146:"Get the member ID of the next member after the given one, or null.It cannot be assumed there are no gaps in member IDs, as members may be deleted.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?MEMBER";s:11:"description";s:41:"The next member ID (null: no next member)";}}s:8:"probe_ip";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"ip";s:3:"ref";b:0;s:4:"type";s:2:"IP";s:11:"description";s:14:"The IP address";s:11:"phpdoc_name";s:2:"ip";}}s:4:"name";s:8:"probe_ip";s:11:"description";s:46:"Try to find a member with the given IP address";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"The distinct rows found";}}s:13:"_get_username";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:13:"_get_username";s:11:"description";s:152:"Get the name relating to the specified member ID.If this returns null, then the member has been deleted. Always take potential null output into account.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:38:"The member name (null: member deleted)";}}s:25:"_get_member_email_address";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:25:"_get_member_email_address";s:11:"description";s:51:"Get the e-mail address for the specified member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:18:"The e-mail address";}}s:24:"get_member_email_allowed";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:24:"get_member_email_allowed";s:11:"description";s:49:"Find if this member may have e-mails sent to them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:48:"Whether the member may have e-mails sent to them";}}s:25:"get_member_join_timestamp";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:25:"get_member_join_timestamp";s:11:"description";s:42:"Get the timestamp of a member's join date.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:4:"TIME";s:11:"description";s:13:"The timestamp";}}s:20:"get_matching_members";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:7:"pattern";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:11:"The pattern";s:11:"phpdoc_name";s:7:"pattern";}i:1;a:7:{s:4:"name";s:5:"limit";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:76:"Maximum number to return (limits to the most recent active) (null: no limit)";s:11:"phpdoc_name";s:5:"limit";}}s:4:"name";s:20:"get_matching_members";s:11:"description";s:64:"Find all members with a name matching the given SQL LIKE string.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:47:"The array of matched members (null: none found)";}}s:14:"get_post_count";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:14:"get_post_count";s:11:"description";s:34:"Get the given member's post count.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:14:"The post count";}}s:15:"get_topic_count";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:15:"get_topic_count";s:11:"description";s:35:"Get the given member's topic count.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"The topic count";}}s:9:"is_banned";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:9:"is_banned";s:11:"description";s:42:"Find out if the given member ID is banned.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:28:"Whether the member is banned";}}s:11:"get_emo_dir";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_emo_dir";s:11:"description";s:35:"Find the base URL to the emoticons.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:12:"The base URL";}}s:14:"find_emoticons";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"find_emoticons";s:11:"description";s:162:"Get a map between emoticon codes and templates representing the HTML-image-code for this emoticon. The emoticons presented of course depend on the forum involved.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:7:"The map";}}s:13:"get_skin_list";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_skin_list";s:11:"description";s:44:"Find a list of all forum skins (aka themes).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"The list of skins";}}s:10:"_get_theme";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:20:"skip_member_specific";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:39:"Whether to avoid member-specific lookup";s:11:"phpdoc_name";s:20:"skip_member_specific";}}s:4:"name";s:10:"_get_theme";s:11:"description";s:395:"Try to find the theme that the logged-in/guest member is using, and map it to a Composr theme.The themes/map.ini file functions to provide this mapping between forum themes, and Composr themes, and has a slightly different meaning for different forum drivers. For example, some drivers map the forum themes theme directory to the Composr theme name, while others made the humanly readeable name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:9:"The theme";}}s:9:"_is_staff";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:9:"_is_staff";s:11:"description";s:58:"Find if the specified member ID is marked as staff or not.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether the member is staff";}}s:15:"_is_super_admin";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:15:"_is_super_admin";s:11:"description";s:66:"Find if the specified member ID is marked as a super admin or not.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:35:"Whether the member is a super admin";}}s:21:"_disable_staff_filter";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"_disable_staff_filter";s:11:"description";s:208:"If we can't get a list of admins via a usergroup query, we have to disable the staff filter - else the staff filtering can cause disaster at the point of being turned on (because it can't automatically sync).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:35:"Whether to disable the staff filter";}}s:20:"get_num_users_forums";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"get_num_users_forums";s:11:"description";s:57:"Get the number of members currently online on the forums.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:21:"The number of members";}}s:11:"get_members";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_members";s:11:"description";s:50:"Get the number of members registered on the forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:21:"The number of members";}}s:10:"get_topics";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"get_topics";s:11:"description";s:44:"Get the total topics ever made on the forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:20:"The number of topics";}}s:19:"get_num_forum_posts";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"get_num_forum_posts";s:11:"description";s:43:"Get the total posts ever made on the forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:19:"The number of posts";}}s:24:"_get_num_new_forum_posts";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"_get_num_new_forum_posts";s:11:"description";s:34:"Get the number of new forum posts.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:19:"The number of posts";}}s:24:"get_member_from_username";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:15:"The member name";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:24:"get_member_from_username";s:11:"description";s:49:"Get a member ID from the given member's username.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";}}s:23:"_get_super_admin_groups";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"_get_super_admin_groups";s:11:"description";s:36:"Get the IDs of the admin usergroups.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"The admin usergroup IDs";}}s:21:"_get_moderator_groups";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"_get_moderator_groups";s:11:"description";s:211:"Get the IDs of the moderator usergroups.It should not be assumed that a member only has one usergroup - this depends upon the forum the driver works for. It also does not take the staff site filter into account.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:27:"The moderator usergroup IDs";}}s:19:"_get_usergroup_list";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"_get_usergroup_list";s:11:"description";s:29:"Get the forum usergroup list.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:18:"The usergroup list";}}s:19:"_get_members_groups";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:19:"_get_members_groups";s:11:"description";s:60:"Get the forum usergroup relating to the specified member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:29:"The array of forum usergroups";}}s:19:"forum_create_cookie";a:5:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:27:"The username (null: lookup)";s:11:"phpdoc_name";s:4:"name";}i:2;a:5:{s:4:"name";s:8:"password";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"The password";s:11:"phpdoc_name";s:8:"password";}}s:4:"name";s:19:"forum_create_cookie";s:11:"description";s:29:"Create a member login cookie.";s:5:"flags";a:0:{}}s:21:"forum_authorise_login";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"username";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:104:"The member username (null: don't use this in the authentication - but look it up using the ID if needed)";s:11:"phpdoc_name";s:8:"username";}i:1;a:5:{s:4:"name";s:6:"userid";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"userid";}i:2;a:5:{s:4:"name";s:15:"password_hashed";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:23:"The md5-hashed password";s:11:"phpdoc_name";s:15:"password_hashed";}i:3;a:5:{s:4:"name";s:12:"password_raw";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:16:"The raw password";s:11:"phpdoc_name";s:12:"password_raw";}i:4;a:7:{s:4:"name";s:12:"cookie_login";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether this is a cookie login";s:11:"phpdoc_name";s:12:"cookie_login";}}s:4:"name";s:21:"forum_authorise_login";s:11:"description";s:294:"Find if the given member ID and password is valid. If username is null, then the member ID is used instead.All authorisation, cookies, and form-logins, are passed through this function.Some forums do cookie logins differently, so a Boolean is passed in to indicate whether it is a cookie login.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:80:"A map of 'id' and 'error'. If 'id' is null, an error occurred and 'error' is set";}}s:13:"get_member_ip";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:13:"get_member_ip";s:11:"description";s:49:"Get a first known IP address of the given member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:2:"IP";s:11:"description";s:14:"The IP address";}}s:14:"get_member_row";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:14:"get_member_row";s:11:"description";s:42:"Gets a whole member row from the database.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:37:"The member row (null: no such member)";}}s:20:"get_member_row_field";a:6:{s:8:"filename";s:24:"sources/forum/phpbb2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:20:"The field identifier";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:20:"get_member_row_field";s:11:"description";s:53:"Gets a named field of a member row from the database.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:9:"The field";}}}s:4:"name";s:19:"Forum_driver_phpbb2";s:7:"comment";b:1;}s:19:"Forum_driver_phpbb3";a:3:{s:9:"functions";a:74:{s:8:"check_db";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:0:{}s:4:"name";s:8:"check_db";s:11:"description";s:54:"Check the connected DB is valid for this forum driver.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:19:"Whether it is valid";}}s:15:"get_top_posters";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"limit";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:47:"The limit to the number of top posters to fetch";s:11:"phpdoc_name";s:5:"limit";}}s:4:"name";s:15:"get_top_posters";s:11:"description";s:62:"Get the rows for the top given number of posters on the forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:57:"The rows for the given number of top posters in the forum";}}s:14:"forum_get_lang";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:45:"The member who's language needs to be fetched";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:14:"forum_get_lang";s:11:"description";s:135:"Attempt to to find the member's language from their forum profile. It converts between language-identifiers using a map (lang/map.ini).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:14:"?LANGUAGE_NAME";s:11:"description";s:37:"The member's language (null: unknown)";}}s:20:"is_cookie_login_name";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"is_cookie_login_name";s:11:"description";s:74:"Find if the login cookie contains the login name instead of the member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:61:"Whether the login cookie contains a login name or a member ID";}}s:9:"is_hashed";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"is_hashed";s:11:"description";s:35:"Find if login cookie is md5-hashed.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether the login cookie is md5-hashed";}}s:12:"get_guest_id";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"get_guest_id";s:11:"description";s:45:"Find the member ID of the forum guest member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"MEMBER";s:11:"description";s:39:"The member ID of the forum guest member";}}s:25:"get_drivered_table_prefix";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"get_drivered_table_prefix";s:11:"description";s:46:"Get the forums' table prefix for the database.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:31:"The forum database table prefix";}}s:27:"install_create_custom_field";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:32:"The name of the new custom field";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:6:"length";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:34:"The length of the new custom field";s:11:"phpdoc_name";s:6:"length";}}s:4:"name";s:27:"install_create_custom_field";s:11:"description";s:145:"Add the specified custom field to the forum (some forums implemented this using proper custom profile fields, others through adding a new field).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether the custom field was created successfully";}}s:17:"install_specifics";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"install_specifics";s:11:"description";s:435:"Get an array of attributes to take in from the installer. Almost all forums require a table prefix, which the requirement there-of is defined through this function.The attributes have 4 values in an array- name, the name of the attribute for _config.php- default, the default value (perhaps obtained through autodetection from forum config)- description, a textual description of the attributes- title, a textual title of the attribute";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:28:"The attributes for the forum";}}s:22:"install_test_load_from";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:27:"The path in which to search";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:22:"install_test_load_from";s:11:"description";s:44:"Searches for forum auto-config at this path.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:44:"Whether the forum auto-config could be found";}}s:28:"install_get_path_search_list";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:0:{}s:4:"name";s:28:"install_get_path_search_list";s:11:"description";s:46:"Get an array of paths to search for config at.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:49:"The paths in which to search for the forum config";}}s:20:"get_emoticon_chooser";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:10:"field_name";s:7:"default";s:4:"post";s:11:"default_raw";s:6:"'post'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:53:"The ID of the form field the emoticon chooser adds to";s:11:"phpdoc_name";s:10:"field_name";}}s:4:"name";s:20:"get_emoticon_chooser";s:11:"description";s:33:"Get an emoticon chooser template.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:29:"The emoticon chooser template";}}s:9:"pin_topic";a:5:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:12:"The topic ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:3:"pin";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"True: pin it, False: unpin it";s:11:"phpdoc_name";s:3:"pin";}}s:4:"name";s:9:"pin_topic";s:11:"description";s:12:"Pin a topic.";s:5:"flags";a:0:{}}s:16:"set_custom_field";a:5:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:77:"The field name (e.g. "firstname" for the CPF with a title of "cms_firstname")";s:11:"phpdoc_name";s:5:"field";}i:2;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:9:"The value";s:11:"phpdoc_name";s:5:"value";}}s:4:"name";s:16:"set_custom_field";s:11:"description";s:110:"Set a custom profile field's value, if the custom field exists. Only works on specially-named (titled) fields.";s:5:"flags";a:0:{}}s:17:"get_custom_fields";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:17:"get_custom_fields";s:11:"description";s:62:"Get custom profile fields values for all 'cms_' prefixed keys.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:71:"A map of the custom profile fields, key_suffix=>value (null: no fields)";}}s:8:"get_mrow";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:15:"The member name";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:8:"get_mrow";s:11:"description";s:50:"Get a member row for the member of the given name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:33:"The profile-row (null: not found)";}}s:10:"mrow_group";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"r";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:10:"mrow_group";s:11:"description";s:54:"From a member row, get the member's primary usergroup.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"GROUP";s:11:"description";s:30:"The member's primary usergroup";}}s:7:"mrow_id";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"r";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:7:"mrow_id";s:11:"description";s:46:"From a member row, get the member's member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";}}s:14:"mrow_lastvisit";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"r";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:14:"mrow_lastvisit";s:11:"description";s:52:"From a member row, get the member's last visit date.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:4:"TIME";s:11:"description";s:19:"The last visit date";}}s:13:"mrow_username";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"r";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:13:"mrow_username";s:11:"description";s:41:"From a member row, get the member's name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:15:"The member name";}}s:10:"mrow_email";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"r";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:10:"mrow_email";s:11:"description";s:51:"From a member row, get the member's e-mail address.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:25:"The member e-mail address";}}s:15:"member_home_url";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:15:"member_home_url";s:11:"description";s:57:"Get a URL to the specified member's home (control panel).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:27:"The URL to the members home";}}s:20:"get_member_photo_url";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:20:"get_member_photo_url";s:11:"description";s:56:"Get the photo thumbnail URL for the specified member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:21:"The URL (blank: none)";}}s:21:"get_member_avatar_url";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:21:"get_member_avatar_url";s:11:"description";s:47:"Get the avatar URL for the specified member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:21:"The URL (blank: none)";}}s:19:"_member_profile_url";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:19:"_member_profile_url";s:11:"description";s:44:"Get a URL to the specified member's profile.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:29:"The URL to the member profile";}}s:9:"_join_url";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"_join_url";s:11:"description";s:74:"Get a URL to the registration page (for people to create member accounts).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:32:"The URL to the registration page";}}s:17:"_users_online_url";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"_users_online_url";s:11:"description";s:37:"Get a URL to the members-online page.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:34:"The URL to the members-online page";}}s:14:"_member_pm_url";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:14:"_member_pm_url";s:11:"description";s:65:"Get a URL to send a private/personal message to the given member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:44:"The URL to the private/personal message page";}}s:10:"_forum_url";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:12:"The forum ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:10:"_forum_url";s:11:"description";s:33:"Get a URL to the specified forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:30:"The URL to the specified forum";}}s:18:"forum_id_from_name";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:10:"forum_name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:14:"The forum name";s:11:"phpdoc_name";s:10:"forum_name";}}s:4:"name";s:18:"forum_id_from_name";s:11:"description";s:35:"Get the forum ID from a forum name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?integer";s:11:"description";s:30:"The forum ID (null: not found)";}}s:9:"_phpbb_ip";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"ip";s:3:"ref";b:0;s:4:"type";s:2:"IP";s:11:"description";s:21:"The normal IP address";s:11:"phpdoc_name";s:2:"ip";}}s:4:"name";s:9:"_phpbb_ip";s:11:"description";s:59:"Convert an IP address into phpBB hexadecimal string format.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:20:"The phpBB IP address";}}s:12:"_un_phpbb_ip";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"ip";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:20:"The phpBB IP address";s:11:"phpdoc_name";s:2:"ip";}}s:4:"name";s:12:"_un_phpbb_ip";s:11:"description";s:59:"Convert an IP address from phpBB hexadecimal string format.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:2:"IP";s:11:"description";s:21:"The normal IP address";}}s:21:"make_post_forum_topic";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:16:{i:0;a:5:{s:4:"name";s:10:"forum_name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:14:"The forum name";s:11:"phpdoc_name";s:10:"forum_name";}i:1;a:5:{s:4:"name";s:16:"topic_identifier";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:58:"The topic identifier (usually _)";s:11:"phpdoc_name";s:16:"topic_identifier";}i:2;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}i:3;a:5:{s:4:"name";s:10:"post_title";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:14:"The post title";s:11:"phpdoc_name";s:10:"post_title";}i:4;a:5:{s:4:"name";s:5:"_post";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:34:"The post content in Comcode format";s:11:"phpdoc_name";s:5:"_post";}i:5;a:5:{s:4:"name";s:13:"content_title";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:77:"The topic title; must be same as content title if this is for a comment topic";s:11:"phpdoc_name";s:13:"content_title";}i:6;a:5:{s:4:"name";s:37:"topic_identifier_encapsulation_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:204:"This is put together with the topic identifier to make a more-human-readable topic title or topic description (hopefully the latter and a $content_title title, but only if the forum supports descriptions)";s:11:"phpdoc_name";s:37:"topic_identifier_encapsulation_prefix";}i:7;a:7:{s:4:"name";s:11:"content_url";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?URLPATH";s:11:"description";s:50:"URL to the content (null: do not make spacer post)";s:11:"phpdoc_name";s:11:"content_url";}i:8;a:7:{s:4:"name";s:4:"time";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:5:"?TIME";s:11:"description";s:38:"The post time (null: use current time)";s:11:"phpdoc_name";s:4:"time";}i:9;a:7:{s:4:"name";s:2:"ip";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:3:"?IP";s:11:"description";s:58:"The post IP address (null: use current members IP address)";s:11:"phpdoc_name";s:2:"ip";}i:10;a:7:{s:4:"name";s:9:"validated";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:146:"Whether the post is validated (null: unknown, find whether it needs to be marked unvalidated initially). This only works with the Conversr driver.";s:11:"phpdoc_name";s:9:"validated";}i:11;a:7:{s:4:"name";s:15:"topic_validated";s:7:"default";i:1;s:11:"default_raw";s:1:"1";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:147:"Whether the topic is validated (null: unknown, find whether it needs to be marked unvalidated initially). This only works with the Conversr driver.";s:11:"phpdoc_name";s:15:"topic_validated";}i:12;a:7:{s:4:"name";s:16:"skip_post_checks";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether to skip post checks";s:11:"phpdoc_name";s:16:"skip_post_checks";}i:13;a:7:{s:4:"name";s:20:"poster_name_if_guest";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:22:"The name of the poster";s:11:"phpdoc_name";s:20:"poster_name_if_guest";}i:14;a:7:{s:4:"name";s:9:"parent_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:39:"ID of post being replied to (null: N/A)";s:11:"phpdoc_name";s:9:"parent_id";}i:15;a:7:{s:4:"name";s:10:"staff_only";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:42:"Whether the reply is only visible to staff";s:11:"phpdoc_name";s:10:"staff_only";}}s:4:"name";s:21:"make_post_forum_topic";s:11:"description";s:466:"Makes a post in the specified forum, in the specified topic according to the given specifications. If the topic doesn't exist, it is created along with a spacer-post.Spacer posts exist in order to allow staff to delete the first true post in a topic. Without spacers, this would not be possible with most forum systems. They also serve to provide meta information on the topic that cannot be encoded in the title (such as a link to the content being commented upon).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:63:"Topic ID (may be null), and whether a hidden post has been made";}}s:21:"get_forum_topic_posts";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:8:"topic_id";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:12:"The topic ID";s:11:"phpdoc_name";s:8:"topic_id";}i:1;a:5:{s:4:"name";s:5:"count";s:3:"ref";b:1;s:4:"type";s:7:"integer";s:11:"description";s:52:"The comment count will be returned here by reference";s:11:"phpdoc_name";s:5:"count";}i:2;a:7:{s:4:"name";s:3:"max";s:7:"default";i:100;s:11:"default_raw";s:3:"100";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:28:"Maximum comments to returned";s:11:"phpdoc_name";s:3:"max";}i:3;a:7:{s:4:"name";s:5:"start";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:19:"Comment to start at";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:9:"mark_read";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:62:"Whether to mark the topic read (ignored for this forum driver)";s:11:"phpdoc_name";s:9:"mark_read";}i:5;a:7:{s:4:"name";s:7:"reverse";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:26:"Whether to show in reverse";s:11:"phpdoc_name";s:7:"reverse";}}s:4:"name";s:21:"get_forum_topic_posts";s:11:"description";s:54:"Get an array of maps for the topic in the given forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:106:"The array of maps (Each map is: title, message, member, date) (-1 for no such forum, -2 for no such topic)";}}s:9:"topic_url";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:12:"The topic ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:5:"forum";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"The forum ID";s:11:"phpdoc_name";s:5:"forum";}}s:4:"name";s:9:"topic_url";s:11:"description";s:133:"Get a URL to the specified topic ID. Most forums don't require the second parameter, but some do, so it is required in the interface.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:20:"The URL to the topic";}}s:8:"post_url";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:11:"The post ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:5:"forum";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"The forum ID";s:11:"phpdoc_name";s:5:"forum";}}s:4:"name";s:8:"post_url";s:11:"description";s:35:"Get a URL to the specified post ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:19:"The URL to the post";}}s:34:"find_topic_id_for_topic_identifier";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"forum";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:19:"The forum name / ID";s:11:"phpdoc_name";s:5:"forum";}i:1;a:5:{s:4:"name";s:16:"topic_identifier";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:20:"The topic identifier";s:11:"phpdoc_name";s:16:"topic_identifier";}}s:4:"name";s:34:"find_topic_id_for_topic_identifier";s:11:"description";s:157:"Get the topic ID from a topic identifier in the specified forum. It is used by comment topics, which means that the unique-topic-name assumption holds valid.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?integer";s:11:"description";s:30:"The topic ID (null: not found)";}}s:17:"show_forum_topics";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:39:"The forum name or an array of forum IDs";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:5:"limit";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:9:"The limit";s:11:"phpdoc_name";s:5:"limit";}i:2;a:5:{s:4:"name";s:5:"start";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:18:"The start position";s:11:"phpdoc_name";s:5:"start";}i:3;a:5:{s:4:"name";s:8:"max_rows";s:3:"ref";b:1;s:4:"type";s:7:"integer";s:11:"description";s:54:"The total rows (not a parameter: returns by reference)";s:11:"phpdoc_name";s:8:"max_rows";}i:4;a:7:{s:4:"name";s:18:"filter_topic_title";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:22:"The topic title filter";s:11:"phpdoc_name";s:18:"filter_topic_title";}i:5;a:7:{s:4:"name";s:16:"show_first_posts";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether to show the first posts";s:11:"phpdoc_name";s:16:"show_first_posts";}i:6;a:8:{s:4:"name";s:8:"date_key";s:7:"default";s:8:"lasttime";s:11:"default_raw";s:10:"'lasttime'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"The date key to sort by";s:11:"phpdoc_name";s:8:"date_key";s:3:"set";s:18:"lasttime firsttime";}i:7;a:7:{s:4:"name";s:3:"hot";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether to limit to hot topics";s:11:"phpdoc_name";s:3:"hot";}i:8;a:7:{s:4:"name";s:24:"filter_topic_description";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:28:"The topic description filter";s:11:"phpdoc_name";s:24:"filter_topic_description";}}s:4:"name";s:17:"show_forum_topics";s:11:"description";s:405:"Get an array of topics in the given forum. Each topic is an array with the following attributes:- id, the topic ID- title, the topic title- lastusername, the username of the last poster- lasttime, the timestamp of the last reply- closed, a Boolean for whether the topic is currently closed or not- firsttitle, the title of the first post- firstpost, the first post (only set if $show_first_posts was true)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:33:"The array of topics (null: error)";}}s:13:"_cleanup_post";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:3:"uid";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:36:"Bbcode embedded UID (which we strip)";s:11:"phpdoc_name";s:3:"uid";}i:1;a:5:{s:4:"name";s:4:"text";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:8:"The post";s:11:"phpdoc_name";s:4:"text";}}s:4:"name";s:13:"_cleanup_post";s:11:"description";s:32:"Cleanup a post to match Comcode.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:12:"Cleaned post";}}s:18:"member_group_query";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:6:"groups";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:23:"The array of usergroups";s:11:"phpdoc_name";s:6:"groups";}i:1;a:7:{s:4:"name";s:3:"max";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:170:"Return up to this many entries for primary members and this many entries for secondary members (null: no limit, only use no limit if querying very restricted usergroups!)";s:11:"phpdoc_name";s:3:"max";}i:2;a:7:{s:4:"name";s:5:"start";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:80:"Return primary members after this offset and secondary members after this offset";s:11:"phpdoc_name";s:5:"start";}}s:4:"name";s:18:"member_group_query";s:11:"description";s:81:"Get an array of members who are in at least one of the given array of usergroups.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:39:"The array of members (null: no members)";}}s:19:"get_previous_member";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:26:"The member ID to decrement";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:19:"get_previous_member";s:11:"description";s:53:"This is the opposite of the get_next_member function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?MEMBER";s:11:"description";s:49:"The previous member ID (null: no previous member)";}}s:15:"get_next_member";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:26:"The member ID to increment";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:15:"get_next_member";s:11:"description";s:146:"Get the member ID of the next member after the given one, or null.It cannot be assumed there are no gaps in member IDs, as members may be deleted.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?MEMBER";s:11:"description";s:41:"The next member ID (null: no next member)";}}s:8:"probe_ip";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"ip";s:3:"ref";b:0;s:4:"type";s:2:"IP";s:11:"description";s:14:"The IP address";s:11:"phpdoc_name";s:2:"ip";}}s:4:"name";s:8:"probe_ip";s:11:"description";s:46:"Try to find a member with the given IP address";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"The distinct rows found";}}s:13:"_get_username";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:13:"_get_username";s:11:"description";s:152:"Get the name relating to the specified member ID.If this returns null, then the member has been deleted. Always take potential null output into account.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:38:"The member name (null: member deleted)";}}s:25:"_get_member_email_address";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:25:"_get_member_email_address";s:11:"description";s:51:"Get the e-mail address for the specified member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:18:"The e-mail address";}}s:24:"get_member_email_allowed";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:24:"get_member_email_allowed";s:11:"description";s:49:"Find if this member may have e-mails sent to them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:48:"Whether the member may have e-mails sent to them";}}s:25:"get_member_join_timestamp";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:25:"get_member_join_timestamp";s:11:"description";s:42:"Get the timestamp of a member's join date.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:4:"TIME";s:11:"description";s:13:"The timestamp";}}s:20:"get_matching_members";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:7:"pattern";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:11:"The pattern";s:11:"phpdoc_name";s:7:"pattern";}i:1;a:7:{s:4:"name";s:5:"limit";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:76:"Maximum number to return (limits to the most recent active) (null: no limit)";s:11:"phpdoc_name";s:5:"limit";}}s:4:"name";s:20:"get_matching_members";s:11:"description";s:64:"Find all members with a name matching the given SQL LIKE string.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:47:"The array of matched members (null: none found)";}}s:14:"get_post_count";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:14:"get_post_count";s:11:"description";s:34:"Get the given member's post count.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:14:"The post count";}}s:15:"get_topic_count";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:15:"get_topic_count";s:11:"description";s:35:"Get the given member's topic count.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"The topic count";}}s:9:"is_banned";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:9:"is_banned";s:11:"description";s:42:"Find out if the given member ID is banned.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:28:"Whether the member is banned";}}s:11:"get_emo_dir";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_emo_dir";s:11:"description";s:35:"Find the base URL to the emoticons.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:12:"The base URL";}}s:14:"find_emoticons";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"find_emoticons";s:11:"description";s:162:"Get a map between emoticon codes and templates representing the HTML-image-code for this emoticon. The emoticons presented of course depend on the forum involved.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:7:"The map";}}s:13:"get_skin_list";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_skin_list";s:11:"description";s:44:"Find a list of all forum skins (aka themes).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"The list of skins";}}s:10:"_get_theme";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:20:"skip_member_specific";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:39:"Whether to avoid member-specific lookup";s:11:"phpdoc_name";s:20:"skip_member_specific";}}s:4:"name";s:10:"_get_theme";s:11:"description";s:395:"Try to find the theme that the logged-in/guest member is using, and map it to a Composr theme.The themes/map.ini file functions to provide this mapping between forum themes, and Composr themes, and has a slightly different meaning for different forum drivers. For example, some drivers map the forum themes theme directory to the Composr theme name, while others made the humanly readeable name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:9:"The theme";}}s:9:"_is_staff";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:9:"_is_staff";s:11:"description";s:58:"Find if the specified member ID is marked as staff or not.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether the member is staff";}}s:15:"_is_super_admin";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:15:"_is_super_admin";s:11:"description";s:66:"Find if the specified member ID is marked as a super admin or not.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:35:"Whether the member is a super admin";}}s:21:"_disable_staff_filter";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"_disable_staff_filter";s:11:"description";s:208:"If we can't get a list of admins via a usergroup query, we have to disable the staff filter - else the staff filtering can cause disaster at the point of being turned on (because it can't automatically sync).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:35:"Whether to disable the staff filter";}}s:20:"get_num_users_forums";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"get_num_users_forums";s:11:"description";s:57:"Get the number of members currently online on the forums.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:21:"The number of members";}}s:11:"get_members";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_members";s:11:"description";s:50:"Get the number of members registered on the forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:21:"The number of members";}}s:10:"get_topics";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"get_topics";s:11:"description";s:44:"Get the total topics ever made on the forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:20:"The number of topics";}}s:19:"get_num_forum_posts";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"get_num_forum_posts";s:11:"description";s:43:"Get the total posts ever made on the forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:19:"The number of posts";}}s:24:"_get_num_new_forum_posts";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"_get_num_new_forum_posts";s:11:"description";s:34:"Get the number of new forum posts.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:19:"The number of posts";}}s:24:"get_member_from_username";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:15:"The member name";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:24:"get_member_from_username";s:11:"description";s:49:"Get a member ID from the given member's username.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";}}s:23:"_get_super_admin_groups";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"_get_super_admin_groups";s:11:"description";s:36:"Get the IDs of the admin usergroups.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"The admin usergroup IDs";}}s:21:"_get_moderator_groups";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"_get_moderator_groups";s:11:"description";s:211:"Get the IDs of the moderator usergroups.It should not be assumed that a member only has one usergroup - this depends upon the forum the driver works for. It also does not take the staff site filter into account.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:27:"The moderator usergroup IDs";}}s:19:"_get_usergroup_list";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"_get_usergroup_list";s:11:"description";s:29:"Get the forum usergroup list.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:18:"The usergroup list";}}s:19:"_get_members_groups";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:19:"_get_members_groups";s:11:"description";s:60:"Get the forum usergroup relating to the specified member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:29:"The array of forum usergroups";}}s:9:"forum_md5";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:44:"The data to hash (the password in actuality)";s:11:"phpdoc_name";s:4:"data";}i:1;a:5:{s:4:"name";s:3:"key";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:108:"The string converted member-ID in actuality, although this function is more general. For cookie logins, 'ys'";s:11:"phpdoc_name";s:3:"key";}i:2;a:7:{s:4:"name";s:10:"just_first";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether to just get the old style hash";s:11:"phpdoc_name";s:10:"just_first";}}s:4:"name";s:9:"forum_md5";s:11:"description";s:132:"The hashing algorithm of this forum driver. NOT used for cookie logins for this forum driver (cookies store a generated session ID).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:15:"The hashed data";}}s:19:"forum_create_cookie";a:5:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:27:"The username (null: lookup)";s:11:"phpdoc_name";s:4:"name";}i:2;a:5:{s:4:"name";s:8:"password";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"The password";s:11:"phpdoc_name";s:8:"password";}}s:4:"name";s:19:"forum_create_cookie";s:11:"description";s:29:"Create a member login cookie.";s:5:"flags";a:0:{}}s:21:"forum_authorise_login";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"username";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:104:"The member username (null: don't use this in the authentication - but look it up using the ID if needed)";s:11:"phpdoc_name";s:8:"username";}i:1;a:5:{s:4:"name";s:6:"userid";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"userid";}i:2;a:5:{s:4:"name";s:15:"password_hashed";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:23:"The md5-hashed password";s:11:"phpdoc_name";s:15:"password_hashed";}i:3;a:5:{s:4:"name";s:12:"password_raw";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:16:"The raw password";s:11:"phpdoc_name";s:12:"password_raw";}i:4;a:7:{s:4:"name";s:12:"cookie_login";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether this is a cookie login";s:11:"phpdoc_name";s:12:"cookie_login";}}s:4:"name";s:21:"forum_authorise_login";s:11:"description";s:294:"Find if the given member ID and password is valid. If username is null, then the member ID is used instead.All authorisation, cookies, and form-logins, are passed through this function.Some forums do cookie logins differently, so a Boolean is passed in to indicate whether it is a cookie login.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:80:"A map of 'id' and 'error'. If 'id' is null, an error occurred and 'error' is set";}}s:13:"get_member_ip";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:13:"get_member_ip";s:11:"description";s:49:"Get a first known IP address of the given member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:2:"IP";s:11:"description";s:14:"The IP address";}}s:14:"get_member_row";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:14:"get_member_row";s:11:"description";s:42:"Gets a whole member row from the database.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:37:"The member row (null: no such member)";}}s:20:"get_member_row_field";a:6:{s:8:"filename";s:24:"sources/forum/phpbb3.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:20:"The field identifier";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:20:"get_member_row_field";s:11:"description";s:53:"Gets a named field of a member row from the database.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:9:"The field";}}}s:4:"name";s:19:"Forum_driver_phpbb3";s:7:"comment";b:1;}s:23:"Forum_driver_ipb_shared";a:3:{s:9:"functions";a:48:{s:8:"check_db";a:6:{s:8:"filename";s:28:"sources/forum/shared/ipb.php";s:10:"parameters";a:0:{}s:4:"name";s:8:"check_db";s:11:"description";s:54:"Check the connected DB is valid for this forum driver.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:19:"Whether it is valid";}}s:15:"get_top_posters";a:6:{s:8:"filename";s:28:"sources/forum/shared/ipb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"limit";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:47:"The limit to the number of top posters to fetch";s:11:"phpdoc_name";s:5:"limit";}}s:4:"name";s:15:"get_top_posters";s:11:"description";s:62:"Get the rows for the top given number of posters on the forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:57:"The rows for the given number of top posters in the forum";}}s:14:"forum_get_lang";a:6:{s:8:"filename";s:28:"sources/forum/shared/ipb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:45:"The member who's language needs to be fetched";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:14:"forum_get_lang";s:11:"description";s:135:"Attempt to to find the member's language from their forum profile. It converts between language-identifiers using a map (lang/map.ini).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:14:"?LANGUAGE_NAME";s:11:"description";s:37:"The member's language (null: unknown)";}}s:10:"ipb_escape";a:6:{s:8:"filename";s:28:"sources/forum/shared/ipb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"val";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:19:"The value to escape";s:11:"phpdoc_name";s:3:"val";}}s:4:"name";s:10:"ipb_escape";s:11:"description";s:45:"Escape a value for HTML embedding, IPB style.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:17:"The escaped value";}}s:10:"unentity_1";a:6:{s:8:"filename";s:28:"sources/forum/shared/ipb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"matches";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:7:"Matches";s:11:"phpdoc_name";s:7:"matches";}}s:4:"name";s:10:"unentity_1";s:11:"description";s:14:"preg callback.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"Replacement";}}s:10:"unentity_2";a:6:{s:8:"filename";s:28:"sources/forum/shared/ipb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:7:"matches";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:7:"Matches";s:11:"phpdoc_name";s:7:"matches";}}s:4:"name";s:10:"unentity_2";s:11:"description";s:14:"preg callback.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:11:"Replacement";}}s:12:"ipb_unescape";a:6:{s:8:"filename";s:28:"sources/forum/shared/ipb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"val";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:21:"The value to unescape";s:11:"phpdoc_name";s:3:"val";}}s:4:"name";s:12:"ipb_unescape";s:11:"description";s:27:"Unescape from IPB escaping.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:19:"The unescaped value";}}s:20:"is_cookie_login_name";a:6:{s:8:"filename";s:28:"sources/forum/shared/ipb.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"is_cookie_login_name";s:11:"description";s:74:"Find if the login cookie contains the login name instead of the member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:61:"Whether the login cookie contains a login name or a member ID";}}s:9:"is_hashed";a:6:{s:8:"filename";s:28:"sources/forum/shared/ipb.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"is_hashed";s:11:"description";s:35:"Find if login cookie is md5-hashed.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether the login cookie is md5-hashed";}}s:12:"get_guest_id";a:6:{s:8:"filename";s:28:"sources/forum/shared/ipb.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"get_guest_id";s:11:"description";s:45:"Find the member ID of the forum guest member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"MEMBER";s:11:"description";s:39:"The member ID of the forum guest member";}}s:25:"get_drivered_table_prefix";a:6:{s:8:"filename";s:28:"sources/forum/shared/ipb.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"get_drivered_table_prefix";s:11:"description";s:46:"Get the forums' table prefix for the database.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:31:"The forum database table prefix";}}s:17:"install_specifics";a:6:{s:8:"filename";s:28:"sources/forum/shared/ipb.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"install_specifics";s:11:"description";s:435:"Get an array of attributes to take in from the installer. Almost all forums require a table prefix, which the requirement there-of is defined through this function.The attributes have 4 values in an array- name, the name of the attribute for _config.php- default, the default value (perhaps obtained through autodetection from forum config)- description, a textual description of the attributes- title, a textual title of the attribute";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:28:"The attributes for the forum";}}s:20:"get_emoticon_chooser";a:6:{s:8:"filename";s:28:"sources/forum/shared/ipb.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:10:"field_name";s:7:"default";s:4:"post";s:11:"default_raw";s:6:"'post'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:53:"The ID of the form field the emoticon chooser adds to";s:11:"phpdoc_name";s:10:"field_name";}}s:4:"name";s:20:"get_emoticon_chooser";s:11:"description";s:33:"Get an emoticon chooser template.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:29:"The emoticon chooser template";}}s:9:"pin_topic";a:5:{s:8:"filename";s:28:"sources/forum/shared/ipb.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:12:"The topic ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:3:"pin";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"True: pin it, False: unpin it";s:11:"phpdoc_name";s:3:"pin";}}s:4:"name";s:9:"pin_topic";s:11:"description";s:12:"Pin a topic.";s:5:"flags";a:0:{}}s:10:"mrow_group";a:6:{s:8:"filename";s:28:"sources/forum/shared/ipb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"r";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:10:"mrow_group";s:11:"description";s:54:"From a member row, get the member's primary usergroup.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"GROUP";s:11:"description";s:30:"The member's primary usergroup";}}s:7:"mrow_id";a:6:{s:8:"filename";s:28:"sources/forum/shared/ipb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"r";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:7:"mrow_id";s:11:"description";s:46:"From a member row, get the member's member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";}}s:14:"mrow_lastvisit";a:6:{s:8:"filename";s:28:"sources/forum/shared/ipb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"r";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:14:"mrow_lastvisit";s:11:"description";s:52:"From a member row, get the member's last visit date.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:4:"TIME";s:11:"description";s:19:"The last visit date";}}s:10:"mrow_email";a:6:{s:8:"filename";s:28:"sources/forum/shared/ipb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"r";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:10:"mrow_email";s:11:"description";s:51:"From a member row, get the member's e-mail address.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:25:"The member e-mail address";}}s:15:"member_home_url";a:6:{s:8:"filename";s:28:"sources/forum/shared/ipb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:15:"member_home_url";s:11:"description";s:57:"Get a URL to the specified member's home (control panel).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:27:"The URL to the members home";}}s:19:"_member_profile_url";a:6:{s:8:"filename";s:28:"sources/forum/shared/ipb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:19:"_member_profile_url";s:11:"description";s:44:"Get a URL to the specified member's profile.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:29:"The URL to the member profile";}}s:9:"_join_url";a:6:{s:8:"filename";s:28:"sources/forum/shared/ipb.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"_join_url";s:11:"description";s:74:"Get a URL to the registration page (for people to create member accounts).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:32:"The URL to the registration page";}}s:17:"_users_online_url";a:6:{s:8:"filename";s:28:"sources/forum/shared/ipb.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"_users_online_url";s:11:"description";s:37:"Get a URL to the members-online page.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:34:"The URL to the members-online page";}}s:14:"_member_pm_url";a:6:{s:8:"filename";s:28:"sources/forum/shared/ipb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:14:"_member_pm_url";s:11:"description";s:65:"Get a URL to send a private/personal message to the given member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:44:"The URL to the private/personal message page";}}s:10:"_forum_url";a:6:{s:8:"filename";s:28:"sources/forum/shared/ipb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:12:"The forum ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:10:"_forum_url";s:11:"description";s:33:"Get a URL to the specified forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:30:"The URL to the specified forum";}}s:18:"forum_id_from_name";a:6:{s:8:"filename";s:28:"sources/forum/shared/ipb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:10:"forum_name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:14:"The forum name";s:11:"phpdoc_name";s:10:"forum_name";}}s:4:"name";s:18:"forum_id_from_name";s:11:"description";s:35:"Get the forum ID from a forum name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?integer";s:11:"description";s:30:"The forum ID (null: not found)";}}s:34:"find_topic_id_for_topic_identifier";a:6:{s:8:"filename";s:28:"sources/forum/shared/ipb.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"forum";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:19:"The forum name / ID";s:11:"phpdoc_name";s:5:"forum";}i:1;a:5:{s:4:"name";s:16:"topic_identifier";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:20:"The topic identifier";s:11:"phpdoc_name";s:16:"topic_identifier";}}s:4:"name";s:34:"find_topic_id_for_topic_identifier";s:11:"description";s:157:"Get the topic ID from a topic identifier in the specified forum. It is used by comment topics, which means that the unique-topic-name assumption holds valid.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?integer";s:11:"description";s:30:"The topic ID (null: not found)";}}s:9:"topic_url";a:6:{s:8:"filename";s:28:"sources/forum/shared/ipb.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:12:"The topic ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:5:"forum";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"The forum ID";s:11:"phpdoc_name";s:5:"forum";}}s:4:"name";s:9:"topic_url";s:11:"description";s:133:"Get a URL to the specified topic ID. Most forums don't require the second parameter, but some do, so it is required in the interface.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:20:"The URL to the topic";}}s:8:"post_url";a:6:{s:8:"filename";s:28:"sources/forum/shared/ipb.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:11:"The post ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:5:"forum";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"The forum ID";s:11:"phpdoc_name";s:5:"forum";}}s:4:"name";s:8:"post_url";s:11:"description";s:35:"Get a URL to the specified post ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:19:"The URL to the post";}}s:18:"member_group_query";a:6:{s:8:"filename";s:28:"sources/forum/shared/ipb.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:6:"groups";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:23:"The array of usergroups";s:11:"phpdoc_name";s:6:"groups";}i:1;a:7:{s:4:"name";s:3:"max";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:170:"Return up to this many entries for primary members and this many entries for secondary members (null: no limit, only use no limit if querying very restricted usergroups!)";s:11:"phpdoc_name";s:3:"max";}i:2;a:7:{s:4:"name";s:5:"start";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:80:"Return primary members after this offset and secondary members after this offset";s:11:"phpdoc_name";s:5:"start";}}s:4:"name";s:18:"member_group_query";s:11:"description";s:81:"Get an array of members who are in at least one of the given array of usergroups.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:39:"The array of members (null: no members)";}}s:19:"get_previous_member";a:6:{s:8:"filename";s:28:"sources/forum/shared/ipb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:26:"The member ID to decrement";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:19:"get_previous_member";s:11:"description";s:53:"This is the opposite of the get_next_member function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?MEMBER";s:11:"description";s:49:"The previous member ID (null: no previous member)";}}s:15:"get_next_member";a:6:{s:8:"filename";s:28:"sources/forum/shared/ipb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:26:"The member ID to increment";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:15:"get_next_member";s:11:"description";s:146:"Get the member ID of the next member after the given one, or null.It cannot be assumed there are no gaps in member IDs, as members may be deleted.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?MEMBER";s:11:"description";s:41:"The next member ID (null: no next member)";}}s:8:"probe_ip";a:6:{s:8:"filename";s:28:"sources/forum/shared/ipb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"ip";s:3:"ref";b:0;s:4:"type";s:2:"IP";s:11:"description";s:14:"The IP address";s:11:"phpdoc_name";s:2:"ip";}}s:4:"name";s:8:"probe_ip";s:11:"description";s:46:"Try to find a member with the given IP address";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"The distinct rows found";}}s:25:"_get_member_email_address";a:6:{s:8:"filename";s:28:"sources/forum/shared/ipb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:25:"_get_member_email_address";s:11:"description";s:51:"Get the e-mail address for the specified member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:18:"The e-mail address";}}s:20:"get_member_photo_url";a:6:{s:8:"filename";s:28:"sources/forum/shared/ipb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:20:"get_member_photo_url";s:11:"description";s:56:"Get the photo thumbnail URL for the specified member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:21:"The URL (blank: none)";}}s:24:"get_member_email_allowed";a:6:{s:8:"filename";s:28:"sources/forum/shared/ipb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:24:"get_member_email_allowed";s:11:"description";s:49:"Find if this member may have e-mails sent to them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:48:"Whether the member may have e-mails sent to them";}}s:25:"get_member_join_timestamp";a:6:{s:8:"filename";s:28:"sources/forum/shared/ipb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:25:"get_member_join_timestamp";s:11:"description";s:42:"Get the timestamp of a member's join date.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:4:"TIME";s:11:"description";s:13:"The timestamp";}}s:14:"get_post_count";a:6:{s:8:"filename";s:28:"sources/forum/shared/ipb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:14:"get_post_count";s:11:"description";s:34:"Get the given member's post count.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:14:"The post count";}}s:15:"get_topic_count";a:6:{s:8:"filename";s:28:"sources/forum/shared/ipb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:15:"get_topic_count";s:11:"description";s:35:"Get the given member's topic count.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"The topic count";}}s:9:"is_banned";a:6:{s:8:"filename";s:28:"sources/forum/shared/ipb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:9:"is_banned";s:11:"description";s:42:"Find out if the given member ID is banned.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:28:"Whether the member is banned";}}s:9:"_is_staff";a:6:{s:8:"filename";s:28:"sources/forum/shared/ipb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:9:"_is_staff";s:11:"description";s:58:"Find if the specified member ID is marked as staff or not.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether the member is staff";}}s:15:"_is_super_admin";a:6:{s:8:"filename";s:28:"sources/forum/shared/ipb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:15:"_is_super_admin";s:11:"description";s:66:"Find if the specified member ID is marked as a super admin or not.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:35:"Whether the member is a super admin";}}s:20:"get_num_users_forums";a:6:{s:8:"filename";s:28:"sources/forum/shared/ipb.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"get_num_users_forums";s:11:"description";s:57:"Get the number of members currently online on the forums.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:21:"The number of members";}}s:24:"_get_num_new_forum_posts";a:6:{s:8:"filename";s:28:"sources/forum/shared/ipb.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"_get_num_new_forum_posts";s:11:"description";s:34:"Get the number of new forum posts.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:19:"The number of posts";}}s:23:"_get_super_admin_groups";a:6:{s:8:"filename";s:28:"sources/forum/shared/ipb.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"_get_super_admin_groups";s:11:"description";s:36:"Get the IDs of the admin usergroups.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"The admin usergroup IDs";}}s:21:"_get_moderator_groups";a:6:{s:8:"filename";s:28:"sources/forum/shared/ipb.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"_get_moderator_groups";s:11:"description";s:211:"Get the IDs of the moderator usergroups.It should not be assumed that a member only has one usergroup - this depends upon the forum the driver works for. It also does not take the staff site filter into account.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:27:"The moderator usergroup IDs";}}s:19:"_get_usergroup_list";a:6:{s:8:"filename";s:28:"sources/forum/shared/ipb.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"_get_usergroup_list";s:11:"description";s:29:"Get the forum usergroup list.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:18:"The usergroup list";}}s:13:"get_member_ip";a:6:{s:8:"filename";s:28:"sources/forum/shared/ipb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:13:"get_member_ip";s:11:"description";s:49:"Get a first known IP address of the given member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:2:"IP";s:11:"description";s:14:"The IP address";}}s:20:"get_member_row_field";a:6:{s:8:"filename";s:28:"sources/forum/shared/ipb.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:20:"The field identifier";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:20:"get_member_row_field";s:11:"description";s:53:"Gets a named field of a member row from the database.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:9:"The field";}}}s:4:"name";s:23:"Forum_driver_ipb_shared";s:7:"comment";b:1;}s:22:"Forum_driver_vb_shared";a:3:{s:9:"functions";a:55:{s:8:"check_db";a:6:{s:8:"filename";s:27:"sources/forum/shared/vb.php";s:10:"parameters";a:0:{}s:4:"name";s:8:"check_db";s:11:"description";s:54:"Check the connected DB is valid for this forum driver.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:19:"Whether it is valid";}}s:15:"get_top_posters";a:6:{s:8:"filename";s:27:"sources/forum/shared/vb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"limit";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:47:"The limit to the number of top posters to fetch";s:11:"phpdoc_name";s:5:"limit";}}s:4:"name";s:15:"get_top_posters";s:11:"description";s:62:"Get the rows for the top given number of posters on the forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:57:"The rows for the given number of top posters in the forum";}}s:14:"forum_get_lang";a:6:{s:8:"filename";s:27:"sources/forum/shared/vb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:45:"The member who's language needs to be fetched";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:14:"forum_get_lang";s:11:"description";s:135:"Attempt to to find the member's language from their forum profile. It converts between language-identifiers using a map (lang/map.ini).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:14:"?LANGUAGE_NAME";s:11:"description";s:37:"The member's language (null: unknown)";}}s:20:"is_cookie_login_name";a:6:{s:8:"filename";s:27:"sources/forum/shared/vb.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"is_cookie_login_name";s:11:"description";s:74:"Find if the login cookie contains the login name instead of the member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:61:"Whether the login cookie contains a login name or a member ID";}}s:12:"get_guest_id";a:6:{s:8:"filename";s:27:"sources/forum/shared/vb.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"get_guest_id";s:11:"description";s:45:"Find the member ID of the forum guest member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"MEMBER";s:11:"description";s:39:"The member ID of the forum guest member";}}s:27:"install_create_custom_field";a:6:{s:8:"filename";s:27:"sources/forum/shared/vb.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:32:"The name of the new custom field";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:6:"length";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:34:"The length of the new custom field";s:11:"phpdoc_name";s:6:"length";}i:2;a:7:{s:4:"name";s:6:"locked";s:7:"default";i:1;s:11:"default_raw";s:1:"1";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:27:"Whether the field is locked";s:11:"phpdoc_name";s:6:"locked";}i:3;a:7:{s:4:"name";s:8:"viewable";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:32:"Whether the field is for viewing";s:11:"phpdoc_name";s:8:"viewable";}i:4;a:7:{s:4:"name";s:8:"settable";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:32:"Whether the field is for setting";s:11:"phpdoc_name";s:8:"settable";}i:5;a:7:{s:4:"name";s:8:"required";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:29:"Whether the field is required";s:11:"phpdoc_name";s:8:"required";}}s:4:"name";s:27:"install_create_custom_field";s:11:"description";s:145:"Add the specified custom field to the forum (some forums implemented this using proper custom profile fields, others through adding a new field).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether the custom field was created successfully";}}s:25:"get_drivered_table_prefix";a:6:{s:8:"filename";s:27:"sources/forum/shared/vb.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"get_drivered_table_prefix";s:11:"description";s:46:"Get the forums' table prefix for the database.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:31:"The forum database table prefix";}}s:20:"get_emoticon_chooser";a:6:{s:8:"filename";s:27:"sources/forum/shared/vb.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:10:"field_name";s:7:"default";s:4:"post";s:11:"default_raw";s:6:"'post'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:53:"The ID of the form field the emoticon chooser adds to";s:11:"phpdoc_name";s:10:"field_name";}}s:4:"name";s:20:"get_emoticon_chooser";s:11:"description";s:33:"Get an emoticon chooser template.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:29:"The emoticon chooser template";}}s:9:"pin_topic";a:5:{s:8:"filename";s:27:"sources/forum/shared/vb.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:12:"The topic ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:3:"pin";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"True: pin it, False: unpin it";s:11:"phpdoc_name";s:3:"pin";}}s:4:"name";s:9:"pin_topic";s:11:"description";s:12:"Pin a topic.";s:5:"flags";a:0:{}}s:8:"get_mrow";a:6:{s:8:"filename";s:27:"sources/forum/shared/vb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:15:"The member name";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:8:"get_mrow";s:11:"description";s:50:"Get a member row for the member of the given name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:38:"The profile-row (null: could not find)";}}s:10:"mrow_group";a:6:{s:8:"filename";s:27:"sources/forum/shared/vb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"r";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:10:"mrow_group";s:11:"description";s:54:"From a member row, get the member's primary usergroup.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"GROUP";s:11:"description";s:30:"The member's primary usergroup";}}s:7:"mrow_id";a:6:{s:8:"filename";s:27:"sources/forum/shared/vb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"r";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:7:"mrow_id";s:11:"description";s:46:"From a member row, get the member's member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";}}s:13:"mrow_username";a:6:{s:8:"filename";s:27:"sources/forum/shared/vb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"r";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:13:"mrow_username";s:11:"description";s:41:"From a member row, get the member's name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:15:"The member name";}}s:10:"mrow_email";a:6:{s:8:"filename";s:27:"sources/forum/shared/vb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"r";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:10:"mrow_email";s:11:"description";s:51:"From a member row, get the member's e-mail address.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:25:"The member e-mail address";}}s:15:"member_home_url";a:6:{s:8:"filename";s:27:"sources/forum/shared/vb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:15:"member_home_url";s:11:"description";s:57:"Get a URL to the specified member's home (control panel).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:27:"The URL to the members home";}}s:20:"get_member_photo_url";a:6:{s:8:"filename";s:27:"sources/forum/shared/vb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:20:"get_member_photo_url";s:11:"description";s:56:"Get the photo thumbnail URL for the specified member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:21:"The URL (blank: none)";}}s:21:"get_member_avatar_url";a:6:{s:8:"filename";s:27:"sources/forum/shared/vb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:21:"get_member_avatar_url";s:11:"description";s:47:"Get the avatar URL for the specified member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:21:"The URL (blank: none)";}}s:19:"_member_profile_url";a:6:{s:8:"filename";s:27:"sources/forum/shared/vb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:19:"_member_profile_url";s:11:"description";s:44:"Get a URL to the specified member's profile.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:29:"The URL to the member profile";}}s:9:"_join_url";a:6:{s:8:"filename";s:27:"sources/forum/shared/vb.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"_join_url";s:11:"description";s:74:"Get a URL to the registration page (for people to create member accounts).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:32:"The URL to the registration page";}}s:17:"_users_online_url";a:6:{s:8:"filename";s:27:"sources/forum/shared/vb.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"_users_online_url";s:11:"description";s:37:"Get a URL to the members-online page.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:34:"The URL to the members-online page";}}s:14:"_member_pm_url";a:6:{s:8:"filename";s:27:"sources/forum/shared/vb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:14:"_member_pm_url";s:11:"description";s:65:"Get a URL to send a private/personal message to the given member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:44:"The URL to the private/personal message page";}}s:10:"_forum_url";a:6:{s:8:"filename";s:27:"sources/forum/shared/vb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:12:"The forum ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:10:"_forum_url";s:11:"description";s:33:"Get a URL to the specified forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:30:"The URL to the specified forum";}}s:18:"forum_id_from_name";a:6:{s:8:"filename";s:27:"sources/forum/shared/vb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:10:"forum_name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:14:"The forum name";s:11:"phpdoc_name";s:10:"forum_name";}}s:4:"name";s:18:"forum_id_from_name";s:11:"description";s:35:"Get the forum ID from a forum name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?integer";s:11:"description";s:30:"The forum ID (null: not found)";}}s:34:"find_topic_id_for_topic_identifier";a:6:{s:8:"filename";s:27:"sources/forum/shared/vb.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"forum";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:19:"The forum name / ID";s:11:"phpdoc_name";s:5:"forum";}i:1;a:5:{s:4:"name";s:16:"topic_identifier";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:20:"The topic identifier";s:11:"phpdoc_name";s:16:"topic_identifier";}}s:4:"name";s:34:"find_topic_id_for_topic_identifier";s:11:"description";s:157:"Get the topic ID from a topic identifier in the specified forum. It is used by comment topics, which means that the unique-topic-name assumption holds valid.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?integer";s:11:"description";s:30:"The topic ID (null: not found)";}}s:21:"make_post_forum_topic";a:6:{s:8:"filename";s:27:"sources/forum/shared/vb.php";s:10:"parameters";a:16:{i:0;a:5:{s:4:"name";s:10:"forum_name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:14:"The forum name";s:11:"phpdoc_name";s:10:"forum_name";}i:1;a:5:{s:4:"name";s:16:"topic_identifier";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:58:"The topic identifier (usually _)";s:11:"phpdoc_name";s:16:"topic_identifier";}i:2;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}i:3;a:5:{s:4:"name";s:10:"post_title";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:14:"The post title";s:11:"phpdoc_name";s:10:"post_title";}i:4;a:5:{s:4:"name";s:4:"post";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:34:"The post content in Comcode format";s:11:"phpdoc_name";s:4:"post";}i:5;a:5:{s:4:"name";s:13:"content_title";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:77:"The topic title; must be same as content title if this is for a comment topic";s:11:"phpdoc_name";s:13:"content_title";}i:6;a:5:{s:4:"name";s:37:"topic_identifier_encapsulation_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:204:"This is put together with the topic identifier to make a more-human-readable topic title or topic description (hopefully the latter and a $content_title title, but only if the forum supports descriptions)";s:11:"phpdoc_name";s:37:"topic_identifier_encapsulation_prefix";}i:7;a:7:{s:4:"name";s:11:"content_url";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?URLPATH";s:11:"description";s:50:"URL to the content (null: do not make spacer post)";s:11:"phpdoc_name";s:11:"content_url";}i:8;a:7:{s:4:"name";s:4:"time";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:5:"?TIME";s:11:"description";s:38:"The post time (null: use current time)";s:11:"phpdoc_name";s:4:"time";}i:9;a:7:{s:4:"name";s:2:"ip";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:3:"?IP";s:11:"description";s:58:"The post IP address (null: use current members IP address)";s:11:"phpdoc_name";s:2:"ip";}i:10;a:7:{s:4:"name";s:9:"validated";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:146:"Whether the post is validated (null: unknown, find whether it needs to be marked unvalidated initially). This only works with the Conversr driver.";s:11:"phpdoc_name";s:9:"validated";}i:11;a:7:{s:4:"name";s:15:"topic_validated";s:7:"default";i:1;s:11:"default_raw";s:1:"1";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:147:"Whether the topic is validated (null: unknown, find whether it needs to be marked unvalidated initially). This only works with the Conversr driver.";s:11:"phpdoc_name";s:15:"topic_validated";}i:12;a:7:{s:4:"name";s:16:"skip_post_checks";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether to skip post checks";s:11:"phpdoc_name";s:16:"skip_post_checks";}i:13;a:7:{s:4:"name";s:20:"poster_name_if_guest";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:22:"The name of the poster";s:11:"phpdoc_name";s:20:"poster_name_if_guest";}i:14;a:7:{s:4:"name";s:9:"parent_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:39:"ID of post being replied to (null: N/A)";s:11:"phpdoc_name";s:9:"parent_id";}i:15;a:7:{s:4:"name";s:10:"staff_only";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:42:"Whether the reply is only visible to staff";s:11:"phpdoc_name";s:10:"staff_only";}}s:4:"name";s:21:"make_post_forum_topic";s:11:"description";s:466:"Makes a post in the specified forum, in the specified topic according to the given specifications. If the topic doesn't exist, it is created along with a spacer-post.Spacer posts exist in order to allow staff to delete the first true post in a topic. Without spacers, this would not be possible with most forum systems. They also serve to provide meta information on the topic that cannot be encoded in the title (such as a link to the content being commented upon).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:63:"Topic ID (may be null), and whether a hidden post has been made";}}s:21:"get_forum_topic_posts";a:6:{s:8:"filename";s:27:"sources/forum/shared/vb.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:8:"topic_id";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:12:"The topic ID";s:11:"phpdoc_name";s:8:"topic_id";}i:1;a:5:{s:4:"name";s:5:"count";s:3:"ref";b:1;s:4:"type";s:7:"integer";s:11:"description";s:52:"The comment count will be returned here by reference";s:11:"phpdoc_name";s:5:"count";}i:2;a:7:{s:4:"name";s:3:"max";s:7:"default";i:100;s:11:"default_raw";s:3:"100";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:28:"Maximum comments to returned";s:11:"phpdoc_name";s:3:"max";}i:3;a:7:{s:4:"name";s:5:"start";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:19:"Comment to start at";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:9:"mark_read";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:62:"Whether to mark the topic read (ignored for this forum driver)";s:11:"phpdoc_name";s:9:"mark_read";}i:5;a:7:{s:4:"name";s:7:"reverse";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:26:"Whether to show in reverse";s:11:"phpdoc_name";s:7:"reverse";}}s:4:"name";s:21:"get_forum_topic_posts";s:11:"description";s:54:"Get an array of maps for the topic in the given forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:106:"The array of maps (Each map is: title, message, member, date) (-1 for no such forum, -2 for no such topic)";}}s:9:"topic_url";a:6:{s:8:"filename";s:27:"sources/forum/shared/vb.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:12:"The topic ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:5:"forum";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"The forum ID";s:11:"phpdoc_name";s:5:"forum";}}s:4:"name";s:9:"topic_url";s:11:"description";s:133:"Get a URL to the specified topic ID. Most forums don't require the second parameter, but some do, so it is required in the interface.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:20:"The URL to the topic";}}s:8:"post_url";a:6:{s:8:"filename";s:27:"sources/forum/shared/vb.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:11:"The post ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:5:"forum";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"The forum ID";s:11:"phpdoc_name";s:5:"forum";}}s:4:"name";s:8:"post_url";s:11:"description";s:35:"Get a URL to the specified post ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:19:"The URL to the post";}}s:17:"show_forum_topics";a:6:{s:8:"filename";s:27:"sources/forum/shared/vb.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:39:"The forum name or an array of forum IDs";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:5:"limit";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:9:"The limit";s:11:"phpdoc_name";s:5:"limit";}i:2;a:5:{s:4:"name";s:5:"start";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:18:"The start position";s:11:"phpdoc_name";s:5:"start";}i:3;a:5:{s:4:"name";s:8:"max_rows";s:3:"ref";b:1;s:4:"type";s:7:"integer";s:11:"description";s:54:"The total rows (not a parameter: returns by reference)";s:11:"phpdoc_name";s:8:"max_rows";}i:4;a:7:{s:4:"name";s:18:"filter_topic_title";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:22:"The topic title filter";s:11:"phpdoc_name";s:18:"filter_topic_title";}i:5;a:7:{s:4:"name";s:16:"show_first_posts";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether to show the first posts";s:11:"phpdoc_name";s:16:"show_first_posts";}i:6;a:8:{s:4:"name";s:8:"date_key";s:7:"default";s:8:"lasttime";s:11:"default_raw";s:10:"'lasttime'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"The date key to sort by";s:11:"phpdoc_name";s:8:"date_key";s:3:"set";s:18:"lasttime firsttime";}i:7;a:7:{s:4:"name";s:3:"hot";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether to limit to hot topics";s:11:"phpdoc_name";s:3:"hot";}i:8;a:7:{s:4:"name";s:24:"filter_topic_description";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:28:"The topic description filter";s:11:"phpdoc_name";s:24:"filter_topic_description";}}s:4:"name";s:17:"show_forum_topics";s:11:"description";s:405:"Get an array of topics in the given forum. Each topic is an array with the following attributes:- id, the topic ID- title, the topic title- lastusername, the username of the last poster- lasttime, the timestamp of the last reply- closed, a Boolean for whether the topic is currently closed or not- firsttitle, the title of the first post- firstpost, the first post (only set if $show_first_posts was true)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:33:"The array of topics (null: error)";}}s:18:"member_group_query";a:6:{s:8:"filename";s:27:"sources/forum/shared/vb.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:6:"groups";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:23:"The array of usergroups";s:11:"phpdoc_name";s:6:"groups";}i:1;a:7:{s:4:"name";s:3:"max";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:170:"Return up to this many entries for primary members and this many entries for secondary members (null: no limit, only use no limit if querying very restricted usergroups!)";s:11:"phpdoc_name";s:3:"max";}i:2;a:7:{s:4:"name";s:5:"start";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:80:"Return primary members after this offset and secondary members after this offset";s:11:"phpdoc_name";s:5:"start";}}s:4:"name";s:18:"member_group_query";s:11:"description";s:81:"Get an array of members who are in at least one of the given array of usergroups.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:39:"The array of members (null: no members)";}}s:19:"get_previous_member";a:6:{s:8:"filename";s:27:"sources/forum/shared/vb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:26:"The member ID to decrement";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:19:"get_previous_member";s:11:"description";s:53:"This is the opposite of the get_next_member function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?MEMBER";s:11:"description";s:49:"The previous member ID (null: no previous member)";}}s:15:"get_next_member";a:6:{s:8:"filename";s:27:"sources/forum/shared/vb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:26:"The member ID to increment";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:15:"get_next_member";s:11:"description";s:146:"Get the member ID of the next member after the given one, or null.It cannot be assumed there are no gaps in member IDs, as members may be deleted.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?MEMBER";s:11:"description";s:41:"The next member ID (null: no next member)";}}s:8:"probe_ip";a:6:{s:8:"filename";s:27:"sources/forum/shared/vb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"ip";s:3:"ref";b:0;s:4:"type";s:2:"IP";s:11:"description";s:14:"The IP address";s:11:"phpdoc_name";s:2:"ip";}}s:4:"name";s:8:"probe_ip";s:11:"description";s:46:"Try to find a member with the given IP address";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"The distinct rows found";}}s:13:"_get_username";a:6:{s:8:"filename";s:27:"sources/forum/shared/vb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:13:"_get_username";s:11:"description";s:152:"Get the name relating to the specified member ID.If this returns null, then the member has been deleted. Always take potential null output into account.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:38:"The member name (null: member deleted)";}}s:25:"_get_member_email_address";a:6:{s:8:"filename";s:27:"sources/forum/shared/vb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:25:"_get_member_email_address";s:11:"description";s:51:"Get the e-mail address for the specified member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:18:"The e-mail address";}}s:24:"get_member_email_allowed";a:6:{s:8:"filename";s:27:"sources/forum/shared/vb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:24:"get_member_email_allowed";s:11:"description";s:49:"Find if this member may have e-mails sent to them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:48:"Whether the member may have e-mails sent to them";}}s:25:"get_member_join_timestamp";a:6:{s:8:"filename";s:27:"sources/forum/shared/vb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:25:"get_member_join_timestamp";s:11:"description";s:42:"Get the timestamp of a member's join date.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:4:"TIME";s:11:"description";s:13:"The timestamp";}}s:20:"get_matching_members";a:6:{s:8:"filename";s:27:"sources/forum/shared/vb.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:7:"pattern";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:11:"The pattern";s:11:"phpdoc_name";s:7:"pattern";}i:1;a:7:{s:4:"name";s:5:"limit";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:76:"Maximum number to return (limits to the most recent active) (null: no limit)";s:11:"phpdoc_name";s:5:"limit";}}s:4:"name";s:20:"get_matching_members";s:11:"description";s:64:"Find all members with a name matching the given SQL LIKE string.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:47:"The array of matched members (null: none found)";}}s:14:"get_post_count";a:6:{s:8:"filename";s:27:"sources/forum/shared/vb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:14:"get_post_count";s:11:"description";s:34:"Get the given member's post count.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:14:"The post count";}}s:15:"get_topic_count";a:6:{s:8:"filename";s:27:"sources/forum/shared/vb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:15:"get_topic_count";s:11:"description";s:35:"Get the given member's topic count.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"The topic count";}}s:11:"get_emo_dir";a:6:{s:8:"filename";s:27:"sources/forum/shared/vb.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_emo_dir";s:11:"description";s:35:"Find the base URL to the emoticons.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:12:"The base URL";}}s:14:"find_emoticons";a:6:{s:8:"filename";s:27:"sources/forum/shared/vb.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"find_emoticons";s:11:"description";s:162:"Get a map between emoticon codes and templates representing the HTML-image-code for this emoticon. The emoticons presented of course depend on the forum involved.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:7:"The map";}}s:13:"get_skin_list";a:6:{s:8:"filename";s:27:"sources/forum/shared/vb.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_skin_list";s:11:"description";s:44:"Find a list of all forum skins (aka themes).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"The list of skins";}}s:10:"_get_theme";a:6:{s:8:"filename";s:27:"sources/forum/shared/vb.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:20:"skip_member_specific";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:39:"Whether to avoid member-specific lookup";s:11:"phpdoc_name";s:20:"skip_member_specific";}}s:4:"name";s:10:"_get_theme";s:11:"description";s:395:"Try to find the theme that the logged-in/guest member is using, and map it to a Composr theme.The themes/map.ini file functions to provide this mapping between forum themes, and Composr themes, and has a slightly different meaning for different forum drivers. For example, some drivers map the forum themes theme directory to the Composr theme name, while others made the humanly readeable name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:9:"The theme";}}s:20:"get_num_users_forums";a:6:{s:8:"filename";s:27:"sources/forum/shared/vb.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"get_num_users_forums";s:11:"description";s:57:"Get the number of members currently online on the forums.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:21:"The number of members";}}s:11:"get_members";a:6:{s:8:"filename";s:27:"sources/forum/shared/vb.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_members";s:11:"description";s:50:"Get the number of members registered on the forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:21:"The number of members";}}s:10:"get_topics";a:6:{s:8:"filename";s:27:"sources/forum/shared/vb.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"get_topics";s:11:"description";s:44:"Get the total topics ever made on the forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:20:"The number of topics";}}s:19:"get_num_forum_posts";a:6:{s:8:"filename";s:27:"sources/forum/shared/vb.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"get_num_forum_posts";s:11:"description";s:43:"Get the total posts ever made on the forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:19:"The number of posts";}}s:24:"_get_num_new_forum_posts";a:6:{s:8:"filename";s:27:"sources/forum/shared/vb.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"_get_num_new_forum_posts";s:11:"description";s:34:"Get the number of new forum posts.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:19:"The number of posts";}}s:16:"set_custom_field";a:5:{s:8:"filename";s:27:"sources/forum/shared/vb.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:77:"The field name (e.g. "firstname" for the CPF with a title of "cms_firstname")";s:11:"phpdoc_name";s:5:"field";}i:2;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:9:"The value";s:11:"phpdoc_name";s:5:"value";}}s:4:"name";s:16:"set_custom_field";s:11:"description";s:110:"Set a custom profile field's value, if the custom field exists. Only works on specially-named (titled) fields.";s:5:"flags";a:0:{}}s:17:"get_custom_fields";a:6:{s:8:"filename";s:27:"sources/forum/shared/vb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:17:"get_custom_fields";s:11:"description";s:62:"Get custom profile fields values for all 'cms_' prefixed keys.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:71:"A map of the custom profile fields, key_suffix=>value (null: no fields)";}}s:24:"get_member_from_username";a:6:{s:8:"filename";s:27:"sources/forum/shared/vb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:15:"The member name";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:24:"get_member_from_username";s:11:"description";s:49:"Get a member ID from the given member's username.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";}}s:13:"get_member_ip";a:6:{s:8:"filename";s:27:"sources/forum/shared/vb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:13:"get_member_ip";s:11:"description";s:49:"Get a first known IP address of the given member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:2:"IP";s:11:"description";s:14:"The IP address";}}s:14:"get_member_row";a:6:{s:8:"filename";s:27:"sources/forum/shared/vb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:14:"get_member_row";s:11:"description";s:42:"Gets a whole member row from the database.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:37:"The member row (null: no such member)";}}s:20:"get_member_row_field";a:6:{s:8:"filename";s:27:"sources/forum/shared/vb.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:20:"The field identifier";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:20:"get_member_row_field";s:11:"description";s:53:"Gets a named field of a member row from the database.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:9:"The field";}}}s:4:"name";s:22:"Forum_driver_vb_shared";s:7:"comment";b:1;}s:23:"Forum_driver_wbb_shared";a:3:{s:9:"functions";a:57:{s:8:"check_db";a:6:{s:8:"filename";s:28:"sources/forum/shared/wbb.php";s:10:"parameters";a:0:{}s:4:"name";s:8:"check_db";s:11:"description";s:54:"Check the connected DB is valid for this forum driver.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:19:"Whether it is valid";}}s:15:"get_top_posters";a:6:{s:8:"filename";s:28:"sources/forum/shared/wbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"limit";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:47:"The limit to the number of top posters to fetch";s:11:"phpdoc_name";s:5:"limit";}}s:4:"name";s:15:"get_top_posters";s:11:"description";s:62:"Get the rows for the top given number of posters on the forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:57:"The rows for the given number of top posters in the forum";}}s:14:"forum_get_lang";a:6:{s:8:"filename";s:28:"sources/forum/shared/wbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:45:"The member who's language needs to be fetched";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:14:"forum_get_lang";s:11:"description";s:135:"Attempt to to find the member's language from their forum profile. It converts between language-identifiers using a map (lang/map.ini).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:14:"?LANGUAGE_NAME";s:11:"description";s:37:"The member's language (null: unknown)";}}s:20:"is_cookie_login_name";a:6:{s:8:"filename";s:28:"sources/forum/shared/wbb.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"is_cookie_login_name";s:11:"description";s:74:"Find if the login cookie contains the login name instead of the member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:61:"Whether the login cookie contains a login name or a member ID";}}s:9:"is_hashed";a:6:{s:8:"filename";s:28:"sources/forum/shared/wbb.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"is_hashed";s:11:"description";s:35:"Find if login cookie is md5-hashed.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether the login cookie is md5-hashed";}}s:12:"get_guest_id";a:6:{s:8:"filename";s:28:"sources/forum/shared/wbb.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"get_guest_id";s:11:"description";s:45:"Find the member ID of the forum guest member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"MEMBER";s:11:"description";s:39:"The member ID of the forum guest member";}}s:25:"get_drivered_table_prefix";a:6:{s:8:"filename";s:28:"sources/forum/shared/wbb.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"get_drivered_table_prefix";s:11:"description";s:46:"Get the forums' table prefix for the database.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:31:"The forum database table prefix";}}s:27:"install_create_custom_field";a:6:{s:8:"filename";s:28:"sources/forum/shared/wbb.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:32:"The name of the new custom field";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:6:"length";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:34:"The length of the new custom field";s:11:"phpdoc_name";s:6:"length";}i:2;a:7:{s:4:"name";s:6:"locked";s:7:"default";i:1;s:11:"default_raw";s:1:"1";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:27:"Whether the field is locked";s:11:"phpdoc_name";s:6:"locked";}i:3;a:7:{s:4:"name";s:8:"viewable";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:32:"Whether the field is for viewing";s:11:"phpdoc_name";s:8:"viewable";}i:4;a:7:{s:4:"name";s:8:"settable";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:32:"Whether the field is for setting";s:11:"phpdoc_name";s:8:"settable";}i:5;a:7:{s:4:"name";s:8:"required";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:29:"Whether the field is required";s:11:"phpdoc_name";s:8:"required";}}s:4:"name";s:27:"install_create_custom_field";s:11:"description";s:145:"Add the specified custom field to the forum (some forums implemented this using proper custom profile fields, others through adding a new field).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether the custom field was created successfully";}}s:17:"install_specifics";a:6:{s:8:"filename";s:28:"sources/forum/shared/wbb.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"install_specifics";s:11:"description";s:435:"Get an array of attributes to take in from the installer. Almost all forums require a table prefix, which the requirement there-of is defined through this function.The attributes have 4 values in an array- name, the name of the attribute for _config.php- default, the default value (perhaps obtained through autodetection from forum config)- description, a textual description of the attributes- title, a textual title of the attribute";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:28:"The attributes for the forum";}}s:22:"install_test_load_from";a:6:{s:8:"filename";s:28:"sources/forum/shared/wbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:27:"The path in which to search";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:22:"install_test_load_from";s:11:"description";s:44:"Searches for forum auto-config at this path.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:44:"Whether the forum auto-config could be found";}}s:28:"install_get_path_search_list";a:6:{s:8:"filename";s:28:"sources/forum/shared/wbb.php";s:10:"parameters";a:0:{}s:4:"name";s:28:"install_get_path_search_list";s:11:"description";s:46:"Get an array of paths to search for config at.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:49:"The paths in which to search for the forum config";}}s:20:"get_emoticon_chooser";a:6:{s:8:"filename";s:28:"sources/forum/shared/wbb.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:10:"field_name";s:7:"default";s:4:"post";s:11:"default_raw";s:6:"'post'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:53:"The ID of the form field the emoticon chooser adds to";s:11:"phpdoc_name";s:10:"field_name";}}s:4:"name";s:20:"get_emoticon_chooser";s:11:"description";s:33:"Get an emoticon chooser template.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:29:"The emoticon chooser template";}}s:9:"pin_topic";a:5:{s:8:"filename";s:28:"sources/forum/shared/wbb.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:12:"The topic ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:3:"pin";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"True: pin it, False: unpin it";s:11:"phpdoc_name";s:3:"pin";}}s:4:"name";s:9:"pin_topic";s:11:"description";s:12:"Pin a topic.";s:5:"flags";a:0:{}}s:8:"get_mrow";a:6:{s:8:"filename";s:28:"sources/forum/shared/wbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:15:"The member name";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:8:"get_mrow";s:11:"description";s:50:"Get a member row for the member of the given name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:38:"The profile-row (null: could not find)";}}s:7:"mrow_id";a:6:{s:8:"filename";s:28:"sources/forum/shared/wbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"r";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:7:"mrow_id";s:11:"description";s:46:"From a member row, get the member's member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";}}s:14:"mrow_lastvisit";a:6:{s:8:"filename";s:28:"sources/forum/shared/wbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"r";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:14:"mrow_lastvisit";s:11:"description";s:52:"From a member row, get the member's last visit date.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:4:"TIME";s:11:"description";s:19:"The last visit date";}}s:13:"mrow_username";a:6:{s:8:"filename";s:28:"sources/forum/shared/wbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"r";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:13:"mrow_username";s:11:"description";s:41:"From a member row, get the member's name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:15:"The member name";}}s:10:"mrow_email";a:6:{s:8:"filename";s:28:"sources/forum/shared/wbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"r";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:10:"mrow_email";s:11:"description";s:51:"From a member row, get the member's e-mail address.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:25:"The member e-mail address";}}s:15:"member_home_url";a:6:{s:8:"filename";s:28:"sources/forum/shared/wbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:15:"member_home_url";s:11:"description";s:57:"Get a URL to the specified member's home (control panel).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:27:"The URL to the members home";}}s:20:"get_member_photo_url";a:6:{s:8:"filename";s:28:"sources/forum/shared/wbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:20:"get_member_photo_url";s:11:"description";s:56:"Get the photo thumbnail URL for the specified member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:21:"The URL (blank: none)";}}s:21:"get_member_avatar_url";a:6:{s:8:"filename";s:28:"sources/forum/shared/wbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:21:"get_member_avatar_url";s:11:"description";s:47:"Get the avatar URL for the specified member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:21:"The URL (blank: none)";}}s:19:"_member_profile_url";a:6:{s:8:"filename";s:28:"sources/forum/shared/wbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:19:"_member_profile_url";s:11:"description";s:44:"Get a URL to the specified member's profile.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:29:"The URL to the member profile";}}s:9:"_join_url";a:6:{s:8:"filename";s:28:"sources/forum/shared/wbb.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"_join_url";s:11:"description";s:74:"Get a URL to the registration page (for people to create member accounts).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:32:"The URL to the registration page";}}s:17:"_users_online_url";a:6:{s:8:"filename";s:28:"sources/forum/shared/wbb.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"_users_online_url";s:11:"description";s:37:"Get a URL to the members-online page.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:34:"The URL to the members-online page";}}s:14:"_member_pm_url";a:6:{s:8:"filename";s:28:"sources/forum/shared/wbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:14:"_member_pm_url";s:11:"description";s:65:"Get a URL to send a private/personal message to the given member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:44:"The URL to the private/personal message page";}}s:10:"_forum_url";a:6:{s:8:"filename";s:28:"sources/forum/shared/wbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:12:"The forum ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:10:"_forum_url";s:11:"description";s:33:"Get a URL to the specified forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:30:"The URL to the specified forum";}}s:18:"forum_id_from_name";a:6:{s:8:"filename";s:28:"sources/forum/shared/wbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:10:"forum_name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:14:"The forum name";s:11:"phpdoc_name";s:10:"forum_name";}}s:4:"name";s:18:"forum_id_from_name";s:11:"description";s:35:"Get the forum ID from a forum name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?integer";s:11:"description";s:30:"The forum ID (null: not found)";}}s:34:"find_topic_id_for_topic_identifier";a:6:{s:8:"filename";s:28:"sources/forum/shared/wbb.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"forum";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:19:"The forum name / ID";s:11:"phpdoc_name";s:5:"forum";}i:1;a:5:{s:4:"name";s:16:"topic_identifier";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:20:"The topic identifier";s:11:"phpdoc_name";s:16:"topic_identifier";}}s:4:"name";s:34:"find_topic_id_for_topic_identifier";s:11:"description";s:157:"Get the topic ID from a topic identifier in the specified forum. It is used by comment topics, which means that the unique-topic-name assumption holds valid.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?integer";s:11:"description";s:30:"The topic ID (null: not found)";}}s:21:"make_post_forum_topic";a:6:{s:8:"filename";s:28:"sources/forum/shared/wbb.php";s:10:"parameters";a:16:{i:0;a:5:{s:4:"name";s:10:"forum_name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:14:"The forum name";s:11:"phpdoc_name";s:10:"forum_name";}i:1;a:5:{s:4:"name";s:16:"topic_identifier";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:58:"The topic identifier (usually _)";s:11:"phpdoc_name";s:16:"topic_identifier";}i:2;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}i:3;a:5:{s:4:"name";s:10:"post_title";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:14:"The post title";s:11:"phpdoc_name";s:10:"post_title";}i:4;a:5:{s:4:"name";s:4:"post";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:34:"The post content in Comcode format";s:11:"phpdoc_name";s:4:"post";}i:5;a:5:{s:4:"name";s:13:"content_title";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:77:"The topic title; must be same as content title if this is for a comment topic";s:11:"phpdoc_name";s:13:"content_title";}i:6;a:5:{s:4:"name";s:37:"topic_identifier_encapsulation_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:204:"This is put together with the topic identifier to make a more-human-readable topic title or topic description (hopefully the latter and a $content_title title, but only if the forum supports descriptions)";s:11:"phpdoc_name";s:37:"topic_identifier_encapsulation_prefix";}i:7;a:7:{s:4:"name";s:11:"content_url";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?URLPATH";s:11:"description";s:50:"URL to the content (null: do not make spacer post)";s:11:"phpdoc_name";s:11:"content_url";}i:8;a:7:{s:4:"name";s:4:"time";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:5:"?TIME";s:11:"description";s:38:"The post time (null: use current time)";s:11:"phpdoc_name";s:4:"time";}i:9;a:7:{s:4:"name";s:2:"ip";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:3:"?IP";s:11:"description";s:58:"The post IP address (null: use current members IP address)";s:11:"phpdoc_name";s:2:"ip";}i:10;a:7:{s:4:"name";s:9:"validated";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:146:"Whether the post is validated (null: unknown, find whether it needs to be marked unvalidated initially). This only works with the Conversr driver.";s:11:"phpdoc_name";s:9:"validated";}i:11;a:7:{s:4:"name";s:15:"topic_validated";s:7:"default";i:1;s:11:"default_raw";s:1:"1";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:147:"Whether the topic is validated (null: unknown, find whether it needs to be marked unvalidated initially). This only works with the Conversr driver.";s:11:"phpdoc_name";s:15:"topic_validated";}i:12;a:7:{s:4:"name";s:16:"skip_post_checks";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether to skip post checks";s:11:"phpdoc_name";s:16:"skip_post_checks";}i:13;a:7:{s:4:"name";s:20:"poster_name_if_guest";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:22:"The name of the poster";s:11:"phpdoc_name";s:20:"poster_name_if_guest";}i:14;a:7:{s:4:"name";s:9:"parent_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:39:"ID of post being replied to (null: N/A)";s:11:"phpdoc_name";s:9:"parent_id";}i:15;a:7:{s:4:"name";s:10:"staff_only";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:42:"Whether the reply is only visible to staff";s:11:"phpdoc_name";s:10:"staff_only";}}s:4:"name";s:21:"make_post_forum_topic";s:11:"description";s:466:"Makes a post in the specified forum, in the specified topic according to the given specifications. If the topic doesn't exist, it is created along with a spacer-post.Spacer posts exist in order to allow staff to delete the first true post in a topic. Without spacers, this would not be possible with most forum systems. They also serve to provide meta information on the topic that cannot be encoded in the title (such as a link to the content being commented upon).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:63:"Topic ID (may be null), and whether a hidden post has been made";}}s:21:"get_forum_topic_posts";a:6:{s:8:"filename";s:28:"sources/forum/shared/wbb.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:8:"topic_id";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:12:"The topic ID";s:11:"phpdoc_name";s:8:"topic_id";}i:1;a:5:{s:4:"name";s:5:"count";s:3:"ref";b:1;s:4:"type";s:7:"integer";s:11:"description";s:52:"The comment count will be returned here by reference";s:11:"phpdoc_name";s:5:"count";}i:2;a:7:{s:4:"name";s:3:"max";s:7:"default";i:100;s:11:"default_raw";s:3:"100";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:28:"Maximum comments to returned";s:11:"phpdoc_name";s:3:"max";}i:3;a:7:{s:4:"name";s:5:"start";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:19:"Comment to start at";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:9:"mark_read";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:62:"Whether to mark the topic read (ignored for this forum driver)";s:11:"phpdoc_name";s:9:"mark_read";}i:5;a:7:{s:4:"name";s:7:"reverse";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:26:"Whether to show in reverse";s:11:"phpdoc_name";s:7:"reverse";}}s:4:"name";s:21:"get_forum_topic_posts";s:11:"description";s:54:"Get an array of maps for the topic in the given forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:106:"The array of maps (Each map is: title, message, member, date) (-1 for no such forum, -2 for no such topic)";}}s:9:"topic_url";a:6:{s:8:"filename";s:28:"sources/forum/shared/wbb.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:12:"The topic ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:5:"forum";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"The forum ID";s:11:"phpdoc_name";s:5:"forum";}}s:4:"name";s:9:"topic_url";s:11:"description";s:133:"Get a URL to the specified topic ID. Most forums don't require the second parameter, but some do, so it is required in the interface.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:20:"The URL to the topic";}}s:8:"post_url";a:6:{s:8:"filename";s:28:"sources/forum/shared/wbb.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:11:"The post ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:5:"forum";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"The forum ID";s:11:"phpdoc_name";s:5:"forum";}}s:4:"name";s:8:"post_url";s:11:"description";s:35:"Get a URL to the specified post ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:19:"The URL to the post";}}s:17:"show_forum_topics";a:6:{s:8:"filename";s:28:"sources/forum/shared/wbb.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:39:"The forum name or an array of forum IDs";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:5:"limit";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:9:"The limit";s:11:"phpdoc_name";s:5:"limit";}i:2;a:5:{s:4:"name";s:5:"start";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:18:"The start position";s:11:"phpdoc_name";s:5:"start";}i:3;a:5:{s:4:"name";s:8:"max_rows";s:3:"ref";b:1;s:4:"type";s:7:"integer";s:11:"description";s:54:"The total rows (not a parameter: returns by reference)";s:11:"phpdoc_name";s:8:"max_rows";}i:4;a:7:{s:4:"name";s:18:"filter_topic_title";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:22:"The topic title filter";s:11:"phpdoc_name";s:18:"filter_topic_title";}i:5;a:7:{s:4:"name";s:16:"show_first_posts";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether to show the first posts";s:11:"phpdoc_name";s:16:"show_first_posts";}i:6;a:8:{s:4:"name";s:8:"date_key";s:7:"default";s:8:"lasttime";s:11:"default_raw";s:10:"'lasttime'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"The date key to sort by";s:11:"phpdoc_name";s:8:"date_key";s:3:"set";s:18:"lasttime firsttime";}i:7;a:7:{s:4:"name";s:3:"hot";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether to limit to hot topics";s:11:"phpdoc_name";s:3:"hot";}i:8;a:7:{s:4:"name";s:24:"filter_topic_description";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:28:"The topic description filter";s:11:"phpdoc_name";s:24:"filter_topic_description";}}s:4:"name";s:17:"show_forum_topics";s:11:"description";s:405:"Get an array of topics in the given forum. Each topic is an array with the following attributes:- id, the topic ID- title, the topic title- lastusername, the username of the last poster- lasttime, the timestamp of the last reply- closed, a Boolean for whether the topic is currently closed or not- firsttitle, the title of the first post- firstpost, the first post (only set if $show_first_posts was true)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:33:"The array of topics (null: error)";}}s:19:"get_previous_member";a:6:{s:8:"filename";s:28:"sources/forum/shared/wbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:26:"The member ID to decrement";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:19:"get_previous_member";s:11:"description";s:53:"This is the opposite of the get_next_member function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?MEMBER";s:11:"description";s:49:"The previous member ID (null: no previous member)";}}s:15:"get_next_member";a:6:{s:8:"filename";s:28:"sources/forum/shared/wbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:26:"The member ID to increment";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:15:"get_next_member";s:11:"description";s:146:"Get the member ID of the next member after the given one, or null.It cannot be assumed there are no gaps in member IDs, as members may be deleted.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?MEMBER";s:11:"description";s:41:"The next member ID (null: no next member)";}}s:8:"probe_ip";a:6:{s:8:"filename";s:28:"sources/forum/shared/wbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"ip";s:3:"ref";b:0;s:4:"type";s:2:"IP";s:11:"description";s:14:"The IP address";s:11:"phpdoc_name";s:2:"ip";}}s:4:"name";s:8:"probe_ip";s:11:"description";s:46:"Try to find a member with the given IP address";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"The distinct rows found";}}s:13:"_get_username";a:6:{s:8:"filename";s:28:"sources/forum/shared/wbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:13:"_get_username";s:11:"description";s:152:"Get the name relating to the specified member ID.If this returns null, then the member has been deleted. Always take potential null output into account.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:38:"The member name (null: member deleted)";}}s:25:"_get_member_email_address";a:6:{s:8:"filename";s:28:"sources/forum/shared/wbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:25:"_get_member_email_address";s:11:"description";s:51:"Get the e-mail address for the specified member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:18:"The e-mail address";}}s:24:"get_member_email_allowed";a:6:{s:8:"filename";s:28:"sources/forum/shared/wbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:24:"get_member_email_allowed";s:11:"description";s:49:"Find if this member may have e-mails sent to them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:48:"Whether the member may have e-mails sent to them";}}s:25:"get_member_join_timestamp";a:6:{s:8:"filename";s:28:"sources/forum/shared/wbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:25:"get_member_join_timestamp";s:11:"description";s:42:"Get the timestamp of a member's join date.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:4:"TIME";s:11:"description";s:13:"The timestamp";}}s:20:"get_matching_members";a:6:{s:8:"filename";s:28:"sources/forum/shared/wbb.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:7:"pattern";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:11:"The pattern";s:11:"phpdoc_name";s:7:"pattern";}i:1;a:7:{s:4:"name";s:5:"limit";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:76:"Maximum number to return (limits to the most recent active) (null: no limit)";s:11:"phpdoc_name";s:5:"limit";}}s:4:"name";s:20:"get_matching_members";s:11:"description";s:64:"Find all members with a name matching the given SQL LIKE string.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:47:"The array of matched members (null: none found)";}}s:14:"get_post_count";a:6:{s:8:"filename";s:28:"sources/forum/shared/wbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:14:"get_post_count";s:11:"description";s:34:"Get the given member's post count.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:14:"The post count";}}s:15:"get_topic_count";a:6:{s:8:"filename";s:28:"sources/forum/shared/wbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:15:"get_topic_count";s:11:"description";s:35:"Get the given member's topic count.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"The topic count";}}s:11:"get_emo_dir";a:6:{s:8:"filename";s:28:"sources/forum/shared/wbb.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_emo_dir";s:11:"description";s:35:"Find the base URL to the emoticons.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:12:"The base URL";}}s:14:"find_emoticons";a:6:{s:8:"filename";s:28:"sources/forum/shared/wbb.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"find_emoticons";s:11:"description";s:162:"Get a map between emoticon codes and templates representing the HTML-image-code for this emoticon. The emoticons presented of course depend on the forum involved.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:7:"The map";}}s:20:"get_num_users_forums";a:6:{s:8:"filename";s:28:"sources/forum/shared/wbb.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"get_num_users_forums";s:11:"description";s:57:"Get the number of members currently online on the forums.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:21:"The number of members";}}s:11:"get_members";a:6:{s:8:"filename";s:28:"sources/forum/shared/wbb.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_members";s:11:"description";s:50:"Get the number of members registered on the forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:21:"The number of members";}}s:10:"get_topics";a:6:{s:8:"filename";s:28:"sources/forum/shared/wbb.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"get_topics";s:11:"description";s:44:"Get the total topics ever made on the forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:20:"The number of topics";}}s:19:"get_num_forum_posts";a:6:{s:8:"filename";s:28:"sources/forum/shared/wbb.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"get_num_forum_posts";s:11:"description";s:43:"Get the total posts ever made on the forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:19:"The number of posts";}}s:24:"_get_num_new_forum_posts";a:6:{s:8:"filename";s:28:"sources/forum/shared/wbb.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"_get_num_new_forum_posts";s:11:"description";s:34:"Get the number of new forum posts.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:19:"The number of posts";}}s:16:"set_custom_field";a:5:{s:8:"filename";s:28:"sources/forum/shared/wbb.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:77:"The field name (e.g. "firstname" for the CPF with a title of "cms_firstname")";s:11:"phpdoc_name";s:5:"field";}i:2;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:9:"The value";s:11:"phpdoc_name";s:5:"value";}}s:4:"name";s:16:"set_custom_field";s:11:"description";s:110:"Set a custom profile field's value, if the custom field exists. Only works on specially-named (titled) fields.";s:5:"flags";a:0:{}}s:17:"get_custom_fields";a:6:{s:8:"filename";s:28:"sources/forum/shared/wbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:17:"get_custom_fields";s:11:"description";s:62:"Get custom profile fields values for all 'cms_' prefixed keys.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:71:"A map of the custom profile fields, key_suffix=>value (null: no fields)";}}s:24:"get_member_from_username";a:6:{s:8:"filename";s:28:"sources/forum/shared/wbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:15:"The member name";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:24:"get_member_from_username";s:11:"description";s:49:"Get a member ID from the given member's username.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";}}s:21:"forum_authorise_login";a:6:{s:8:"filename";s:28:"sources/forum/shared/wbb.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"username";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:104:"The member username (null: don't use this in the authentication - but look it up using the ID if needed)";s:11:"phpdoc_name";s:8:"username";}i:1;a:5:{s:4:"name";s:8:"memberid";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:8:"memberid";}i:2;a:5:{s:4:"name";s:15:"password_hashed";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:23:"The md5-hashed password";s:11:"phpdoc_name";s:15:"password_hashed";}i:3;a:5:{s:4:"name";s:12:"password_raw";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:16:"The raw password";s:11:"phpdoc_name";s:12:"password_raw";}i:4;a:7:{s:4:"name";s:12:"cookie_login";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether this is a cookie login";s:11:"phpdoc_name";s:12:"cookie_login";}}s:4:"name";s:21:"forum_authorise_login";s:11:"description";s:294:"Find if the given member ID and password is valid. If username is null, then the member ID is used instead.All authorisation, cookies, and form-logins, are passed through this function.Some forums do cookie logins differently, so a Boolean is passed in to indicate whether it is a cookie login.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:80:"A map of 'id' and 'error'. If 'id' is null, an error occurred and 'error' is set";}}s:13:"get_member_ip";a:6:{s:8:"filename";s:28:"sources/forum/shared/wbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:13:"get_member_ip";s:11:"description";s:49:"Get a first known IP address of the given member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:2:"IP";s:11:"description";s:14:"The IP address";}}s:14:"get_member_row";a:6:{s:8:"filename";s:28:"sources/forum/shared/wbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:14:"get_member_row";s:11:"description";s:42:"Gets a whole member row from the database.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:37:"The member row (null: no such member)";}}s:20:"get_member_row_field";a:6:{s:8:"filename";s:28:"sources/forum/shared/wbb.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:20:"The field identifier";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:20:"get_member_row_field";s:11:"description";s:53:"Gets a named field of a member row from the database.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:9:"The field";}}}s:4:"name";s:23:"Forum_driver_wbb_shared";s:7:"comment";b:1;}s:16:"Forum_driver_smf";a:3:{s:9:"functions";a:73:{s:8:"check_db";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:0:{}s:4:"name";s:8:"check_db";s:11:"description";s:54:"Check the connected DB is valid for this forum driver.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:19:"Whether it is valid";}}s:15:"get_top_posters";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"limit";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:47:"The limit to the number of top posters to fetch";s:11:"phpdoc_name";s:5:"limit";}}s:4:"name";s:15:"get_top_posters";s:11:"description";s:62:"Get the rows for the top given number of posters on the forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:57:"The rows for the given number of top posters in the forum";}}s:14:"forum_get_lang";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:45:"The member who's language needs to be fetched";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:14:"forum_get_lang";s:11:"description";s:135:"Attempt to to find the member's language from their forum profile. It converts between language-identifiers using a map (lang/map.ini).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:14:"?LANGUAGE_NAME";s:11:"description";s:37:"The member's language (null: unknown)";}}s:20:"is_cookie_login_name";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"is_cookie_login_name";s:11:"description";s:74:"Find if the login cookie contains the login name instead of the member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:61:"Whether the login cookie contains a login name or a member ID";}}s:9:"is_hashed";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"is_hashed";s:11:"description";s:35:"Find if login cookie is md5-hashed.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether the login cookie is md5-hashed";}}s:12:"get_guest_id";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"get_guest_id";s:11:"description";s:45:"Find the member ID of the forum guest member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"MEMBER";s:11:"description";s:39:"The member ID of the forum guest member";}}s:25:"get_drivered_table_prefix";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"get_drivered_table_prefix";s:11:"description";s:46:"Get the forums' table prefix for the database.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:31:"The forum database table prefix";}}s:27:"install_create_custom_field";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:32:"The name of the new custom field";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:6:"length";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:34:"The length of the new custom field";s:11:"phpdoc_name";s:6:"length";}}s:4:"name";s:27:"install_create_custom_field";s:11:"description";s:145:"Add the specified custom field to the forum (some forums implemented this using proper custom profile fields, others through adding a new field).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether the custom field was created successfully";}}s:17:"install_specifics";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"install_specifics";s:11:"description";s:435:"Get an array of attributes to take in from the installer. Almost all forums require a table prefix, which the requirement there-of is defined through this function.The attributes have 4 values in an array- name, the name of the attribute for _config.php- default, the default value (perhaps obtained through autodetection from forum config)- description, a textual description of the attributes- title, a textual title of the attribute";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:28:"The attributes for the forum";}}s:22:"install_test_load_from";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:27:"The path in which to search";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:22:"install_test_load_from";s:11:"description";s:44:"Searches for forum auto-config at this path.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:44:"Whether the forum auto-config could be found";}}s:28:"install_get_path_search_list";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:0:{}s:4:"name";s:28:"install_get_path_search_list";s:11:"description";s:46:"Get an array of paths to search for config at.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:49:"The paths in which to search for the forum config";}}s:20:"get_emoticon_chooser";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:10:"field_name";s:7:"default";s:4:"post";s:11:"default_raw";s:6:"'post'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:53:"The ID of the form field the emoticon chooser adds to";s:11:"phpdoc_name";s:10:"field_name";}}s:4:"name";s:20:"get_emoticon_chooser";s:11:"description";s:33:"Get an emoticon chooser template.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:29:"The emoticon chooser template";}}s:9:"pin_topic";a:5:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:12:"The topic ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:3:"pin";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"True: pin it, False: unpin it";s:11:"phpdoc_name";s:3:"pin";}}s:4:"name";s:9:"pin_topic";s:11:"description";s:12:"Pin a topic.";s:5:"flags";a:0:{}}s:16:"set_custom_field";a:5:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:77:"The field name (e.g. "firstname" for the CPF with a title of "cms_firstname")";s:11:"phpdoc_name";s:5:"field";}i:2;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:9:"The value";s:11:"phpdoc_name";s:5:"value";}}s:4:"name";s:16:"set_custom_field";s:11:"description";s:110:"Set a custom profile field's value, if the custom field exists. Only works on specially-named (titled) fields.";s:5:"flags";a:0:{}}s:17:"get_custom_fields";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:17:"get_custom_fields";s:11:"description";s:62:"Get custom profile fields values for all 'cms_' prefixed keys.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:71:"A map of the custom profile fields, key_suffix=>value (null: no fields)";}}s:8:"get_mrow";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:15:"The member name";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:8:"get_mrow";s:11:"description";s:50:"Get a member row for the member of the given name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:38:"The profile-row (null: could not find)";}}s:10:"mrow_group";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"r";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:10:"mrow_group";s:11:"description";s:54:"From a member row, get the member's primary usergroup.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"GROUP";s:11:"description";s:30:"The member's primary usergroup";}}s:7:"mrow_id";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"r";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:7:"mrow_id";s:11:"description";s:46:"From a member row, get the member's member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";}}s:14:"mrow_lastvisit";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"r";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:14:"mrow_lastvisit";s:11:"description";s:52:"From a member row, get the member's last visit date.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:4:"TIME";s:11:"description";s:19:"The last visit date";}}s:13:"mrow_username";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"r";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:13:"mrow_username";s:11:"description";s:41:"From a member row, get the member's name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:15:"The member name";}}s:10:"mrow_email";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"r";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:10:"mrow_email";s:11:"description";s:51:"From a member row, get the member's e-mail address.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:25:"The member e-mail address";}}s:20:"get_member_photo_url";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:20:"get_member_photo_url";s:11:"description";s:56:"Get the photo thumbnail URL for the specified member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:21:"The URL (blank: none)";}}s:21:"get_member_avatar_url";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:21:"get_member_avatar_url";s:11:"description";s:47:"Get the avatar URL for the specified member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:21:"The URL (blank: none)";}}s:15:"member_home_url";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:15:"member_home_url";s:11:"description";s:57:"Get a URL to the specified member's home (control panel).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:27:"The URL to the members home";}}s:19:"_member_profile_url";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:19:"_member_profile_url";s:11:"description";s:44:"Get a URL to the specified member's profile.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:29:"The URL to the member profile";}}s:9:"_join_url";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"_join_url";s:11:"description";s:74:"Get a URL to the registration page (for people to create member accounts).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:32:"The URL to the registration page";}}s:17:"_users_online_url";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"_users_online_url";s:11:"description";s:37:"Get a URL to the members-online page.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:34:"The URL to the members-online page";}}s:14:"_member_pm_url";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:14:"_member_pm_url";s:11:"description";s:65:"Get a URL to send a private/personal message to the given member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:44:"The URL to the private/personal message page";}}s:10:"_forum_url";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:12:"The forum ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:10:"_forum_url";s:11:"description";s:33:"Get a URL to the specified forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:30:"The URL to the specified forum";}}s:18:"forum_id_from_name";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:10:"forum_name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:14:"The forum name";s:11:"phpdoc_name";s:10:"forum_name";}}s:4:"name";s:18:"forum_id_from_name";s:11:"description";s:35:"Get the forum ID from a forum name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?integer";s:11:"description";s:30:"The forum ID (null: not found)";}}s:34:"find_topic_id_for_topic_identifier";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"forum";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:19:"The forum name / ID";s:11:"phpdoc_name";s:5:"forum";}i:1;a:5:{s:4:"name";s:16:"topic_identifier";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:20:"The topic identifier";s:11:"phpdoc_name";s:16:"topic_identifier";}}s:4:"name";s:34:"find_topic_id_for_topic_identifier";s:11:"description";s:157:"Get the topic ID from a topic identifier in the specified forum. It is used by comment topics, which means that the unique-topic-name assumption holds valid.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?integer";s:11:"description";s:30:"The topic ID (null: not found)";}}s:21:"make_post_forum_topic";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:16:{i:0;a:5:{s:4:"name";s:10:"forum_name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:14:"The forum name";s:11:"phpdoc_name";s:10:"forum_name";}i:1;a:5:{s:4:"name";s:16:"topic_identifier";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:58:"The topic identifier (usually _)";s:11:"phpdoc_name";s:16:"topic_identifier";}i:2;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}i:3;a:5:{s:4:"name";s:10:"post_title";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:14:"The post title";s:11:"phpdoc_name";s:10:"post_title";}i:4;a:5:{s:4:"name";s:4:"post";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:34:"The post content in Comcode format";s:11:"phpdoc_name";s:4:"post";}i:5;a:5:{s:4:"name";s:13:"content_title";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:77:"The topic title; must be same as content title if this is for a comment topic";s:11:"phpdoc_name";s:13:"content_title";}i:6;a:5:{s:4:"name";s:37:"topic_identifier_encapsulation_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:204:"This is put together with the topic identifier to make a more-human-readable topic title or topic description (hopefully the latter and a $content_title title, but only if the forum supports descriptions)";s:11:"phpdoc_name";s:37:"topic_identifier_encapsulation_prefix";}i:7;a:7:{s:4:"name";s:11:"content_url";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?URLPATH";s:11:"description";s:50:"URL to the content (null: do not make spacer post)";s:11:"phpdoc_name";s:11:"content_url";}i:8;a:7:{s:4:"name";s:4:"time";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:5:"?TIME";s:11:"description";s:38:"The post time (null: use current time)";s:11:"phpdoc_name";s:4:"time";}i:9;a:7:{s:4:"name";s:2:"ip";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:3:"?IP";s:11:"description";s:58:"The post IP address (null: use current members IP address)";s:11:"phpdoc_name";s:2:"ip";}i:10;a:7:{s:4:"name";s:9:"validated";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:146:"Whether the post is validated (null: unknown, find whether it needs to be marked unvalidated initially). This only works with the Conversr driver.";s:11:"phpdoc_name";s:9:"validated";}i:11;a:7:{s:4:"name";s:15:"topic_validated";s:7:"default";i:1;s:11:"default_raw";s:1:"1";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:147:"Whether the topic is validated (null: unknown, find whether it needs to be marked unvalidated initially). This only works with the Conversr driver.";s:11:"phpdoc_name";s:15:"topic_validated";}i:12;a:7:{s:4:"name";s:16:"skip_post_checks";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether to skip post checks";s:11:"phpdoc_name";s:16:"skip_post_checks";}i:13;a:7:{s:4:"name";s:20:"poster_name_if_guest";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:22:"The name of the poster";s:11:"phpdoc_name";s:20:"poster_name_if_guest";}i:14;a:7:{s:4:"name";s:9:"parent_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:39:"ID of post being replied to (null: N/A)";s:11:"phpdoc_name";s:9:"parent_id";}i:15;a:7:{s:4:"name";s:10:"staff_only";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:42:"Whether the reply is only visible to staff";s:11:"phpdoc_name";s:10:"staff_only";}}s:4:"name";s:21:"make_post_forum_topic";s:11:"description";s:466:"Makes a post in the specified forum, in the specified topic according to the given specifications. If the topic doesn't exist, it is created along with a spacer-post.Spacer posts exist in order to allow staff to delete the first true post in a topic. Without spacers, this would not be possible with most forum systems. They also serve to provide meta information on the topic that cannot be encoded in the title (such as a link to the content being commented upon).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:63:"Topic ID (may be null), and whether a hidden post has been made";}}s:21:"get_forum_topic_posts";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:8:"topic_id";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:12:"The topic ID";s:11:"phpdoc_name";s:8:"topic_id";}i:1;a:5:{s:4:"name";s:5:"count";s:3:"ref";b:1;s:4:"type";s:7:"integer";s:11:"description";s:52:"The comment count will be returned here by reference";s:11:"phpdoc_name";s:5:"count";}i:2;a:7:{s:4:"name";s:3:"max";s:7:"default";i:100;s:11:"default_raw";s:3:"100";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:28:"Maximum comments to returned";s:11:"phpdoc_name";s:3:"max";}i:3;a:7:{s:4:"name";s:5:"start";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:19:"Comment to start at";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:9:"mark_read";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:62:"Whether to mark the topic read (ignored for this forum driver)";s:11:"phpdoc_name";s:9:"mark_read";}i:5;a:7:{s:4:"name";s:7:"reverse";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:26:"Whether to show in reverse";s:11:"phpdoc_name";s:7:"reverse";}}s:4:"name";s:21:"get_forum_topic_posts";s:11:"description";s:54:"Get an array of maps for the topic in the given forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:106:"The array of maps (Each map is: title, message, member, date) (-1 for no such forum, -2 for no such topic)";}}s:9:"topic_url";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:12:"The topic ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:5:"forum";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"The forum ID";s:11:"phpdoc_name";s:5:"forum";}}s:4:"name";s:9:"topic_url";s:11:"description";s:133:"Get a URL to the specified topic ID. Most forums don't require the second parameter, but some do, so it is required in the interface.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:20:"The URL to the topic";}}s:8:"post_url";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:11:"The post ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:5:"forum";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"The forum ID";s:11:"phpdoc_name";s:5:"forum";}}s:4:"name";s:8:"post_url";s:11:"description";s:35:"Get a URL to the specified post ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:19:"The URL to the post";}}s:17:"show_forum_topics";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:39:"The forum name or an array of forum IDs";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:5:"limit";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:9:"The limit";s:11:"phpdoc_name";s:5:"limit";}i:2;a:5:{s:4:"name";s:5:"start";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:18:"The start position";s:11:"phpdoc_name";s:5:"start";}i:3;a:5:{s:4:"name";s:8:"max_rows";s:3:"ref";b:1;s:4:"type";s:7:"integer";s:11:"description";s:54:"The total rows (not a parameter: returns by reference)";s:11:"phpdoc_name";s:8:"max_rows";}i:4;a:7:{s:4:"name";s:18:"filter_topic_title";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:22:"The topic title filter";s:11:"phpdoc_name";s:18:"filter_topic_title";}i:5;a:7:{s:4:"name";s:16:"show_first_posts";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether to show the first posts";s:11:"phpdoc_name";s:16:"show_first_posts";}i:6;a:8:{s:4:"name";s:8:"date_key";s:7:"default";s:8:"lasttime";s:11:"default_raw";s:10:"'lasttime'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"The date key to sort by";s:11:"phpdoc_name";s:8:"date_key";s:3:"set";s:18:"lasttime firsttime";}i:7;a:7:{s:4:"name";s:3:"hot";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether to limit to hot topics";s:11:"phpdoc_name";s:3:"hot";}i:8;a:7:{s:4:"name";s:24:"filter_topic_description";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:28:"The topic description filter";s:11:"phpdoc_name";s:24:"filter_topic_description";}}s:4:"name";s:17:"show_forum_topics";s:11:"description";s:405:"Get an array of topics in the given forum. Each topic is an array with the following attributes:- id, the topic ID- title, the topic title- lastusername, the username of the last poster- lasttime, the timestamp of the last reply- closed, a Boolean for whether the topic is currently closed or not- firsttitle, the title of the first post- firstpost, the first post (only set if $show_first_posts was true)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:33:"The array of topics (null: error)";}}s:18:"member_group_query";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:6:"groups";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:23:"The array of usergroups";s:11:"phpdoc_name";s:6:"groups";}i:1;a:7:{s:4:"name";s:3:"max";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:170:"Return up to this many entries for primary members and this many entries for secondary members (null: no limit, only use no limit if querying very restricted usergroups!)";s:11:"phpdoc_name";s:3:"max";}i:2;a:7:{s:4:"name";s:5:"start";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:80:"Return primary members after this offset and secondary members after this offset";s:11:"phpdoc_name";s:5:"start";}}s:4:"name";s:18:"member_group_query";s:11:"description";s:81:"Get an array of members who are in at least one of the given array of usergroups.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:39:"The array of members (null: no members)";}}s:19:"get_previous_member";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:26:"The member ID to decrement";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:19:"get_previous_member";s:11:"description";s:53:"This is the opposite of the get_next_member function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?MEMBER";s:11:"description";s:49:"The previous member ID (null: no previous member)";}}s:15:"get_next_member";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:26:"The member ID to increment";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:15:"get_next_member";s:11:"description";s:146:"Get the member ID of the next member after the given one, or null.It cannot be assumed there are no gaps in member IDs, as members may be deleted.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?MEMBER";s:11:"description";s:41:"The next member ID (null: no next member)";}}s:8:"probe_ip";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"ip";s:3:"ref";b:0;s:4:"type";s:2:"IP";s:11:"description";s:14:"The IP address";s:11:"phpdoc_name";s:2:"ip";}}s:4:"name";s:8:"probe_ip";s:11:"description";s:46:"Try to find a member with the given IP address";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"The distinct rows found";}}s:13:"_get_username";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:13:"_get_username";s:11:"description";s:152:"Get the name relating to the specified member ID.If this returns null, then the member has been deleted. Always take potential null output into account.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:38:"The member name (null: member deleted)";}}s:15:"get_displayname";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"username";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"The username";s:11:"phpdoc_name";s:8:"username";}}s:4:"name";s:15:"get_displayname";s:11:"description";s:117:"Get the display name of a username.If no display name generator is configured, this will be the same as the username.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:16:"The display name";}}s:25:"_get_member_email_address";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:25:"_get_member_email_address";s:11:"description";s:51:"Get the e-mail address for the specified member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:18:"The e-mail address";}}s:24:"get_member_email_allowed";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:24:"get_member_email_allowed";s:11:"description";s:49:"Find if this member may have e-mails sent to them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:48:"Whether the member may have e-mails sent to them";}}s:25:"get_member_join_timestamp";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:25:"get_member_join_timestamp";s:11:"description";s:42:"Get the timestamp of a member's join date.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:4:"TIME";s:11:"description";s:13:"The timestamp";}}s:20:"get_matching_members";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:7:"pattern";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:11:"The pattern";s:11:"phpdoc_name";s:7:"pattern";}i:1;a:7:{s:4:"name";s:5:"limit";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:76:"Maximum number to return (limits to the most recent active) (null: no limit)";s:11:"phpdoc_name";s:5:"limit";}}s:4:"name";s:20:"get_matching_members";s:11:"description";s:64:"Find all members with a name matching the given SQL LIKE string.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:47:"The array of matched members (null: none found)";}}s:14:"get_post_count";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:14:"get_post_count";s:11:"description";s:34:"Get the given member's post count.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:14:"The post count";}}s:15:"get_topic_count";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:15:"get_topic_count";s:11:"description";s:35:"Get the given member's topic count.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"The topic count";}}s:9:"is_banned";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:9:"is_banned";s:11:"description";s:42:"Find out if the given member ID is banned.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:28:"Whether the member is banned";}}s:11:"get_emo_dir";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_emo_dir";s:11:"description";s:35:"Find the base URL to the emoticons.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:12:"The base URL";}}s:14:"find_emoticons";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"find_emoticons";s:11:"description";s:162:"Get a map between emoticon codes and templates representing the HTML-image-code for this emoticon. The emoticons presented of course depend on the forum involved.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:7:"The map";}}s:13:"get_skin_list";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_skin_list";s:11:"description";s:44:"Find a list of all forum skins (aka themes).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"The list of skins";}}s:10:"_get_theme";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:20:"skip_member_specific";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:39:"Whether to avoid member-specific lookup";s:11:"phpdoc_name";s:20:"skip_member_specific";}}s:4:"name";s:10:"_get_theme";s:11:"description";s:395:"Try to find the theme that the logged-in/guest member is using, and map it to a Composr theme.The themes/map.ini file functions to provide this mapping between forum themes, and Composr themes, and has a slightly different meaning for different forum drivers. For example, some drivers map the forum themes theme directory to the Composr theme name, while others made the humanly readeable name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:9:"The theme";}}s:9:"_is_staff";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:9:"_is_staff";s:11:"description";s:58:"Find if the specified member ID is marked as staff or not.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether the member is staff";}}s:15:"_is_super_admin";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:15:"_is_super_admin";s:11:"description";s:66:"Find if the specified member ID is marked as a super admin or not.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:35:"Whether the member is a super admin";}}s:20:"get_num_users_forums";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"get_num_users_forums";s:11:"description";s:57:"Get the number of members currently online on the forums.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:21:"The number of members";}}s:11:"get_members";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_members";s:11:"description";s:50:"Get the number of members registered on the forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:21:"The number of members";}}s:10:"get_topics";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"get_topics";s:11:"description";s:44:"Get the total topics ever made on the forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:20:"The number of topics";}}s:19:"get_num_forum_posts";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"get_num_forum_posts";s:11:"description";s:43:"Get the total posts ever made on the forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:19:"The number of posts";}}s:24:"_get_num_new_forum_posts";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"_get_num_new_forum_posts";s:11:"description";s:34:"Get the number of new forum posts.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:19:"The number of posts";}}s:24:"get_member_from_username";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:15:"The member name";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:24:"get_member_from_username";s:11:"description";s:49:"Get a member ID from the given member's username.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";}}s:23:"_get_super_admin_groups";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"_get_super_admin_groups";s:11:"description";s:36:"Get the IDs of the admin usergroups.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"The admin usergroup IDs";}}s:21:"_get_moderator_groups";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"_get_moderator_groups";s:11:"description";s:211:"Get the IDs of the moderator usergroups.It should not be assumed that a member only has one usergroup - this depends upon the forum the driver works for. It also does not take the staff site filter into account.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:27:"The moderator usergroup IDs";}}s:19:"_get_usergroup_list";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"_get_usergroup_list";s:11:"description";s:29:"Get the forum usergroup list.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:18:"The usergroup list";}}s:19:"_get_members_groups";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:19:"_get_members_groups";s:11:"description";s:60:"Get the forum usergroup relating to the specified member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:29:"The array of forum usergroups";}}s:9:"forum_md5";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:44:"The data to hash (the password in actuality)";s:11:"phpdoc_name";s:4:"data";}i:1;a:5:{s:4:"name";s:3:"key";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:108:"The string converted member-ID in actuality, although this function is more general. For cookie logins, 'ys'";s:11:"phpdoc_name";s:3:"key";}i:2;a:7:{s:4:"name";s:10:"just_first";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether to just get the old style hash";s:11:"phpdoc_name";s:10:"just_first";}}s:4:"name";s:9:"forum_md5";s:11:"description";s:43:"The hashing algorithm of this forum driver.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:15:"The hashed data";}}s:19:"forum_create_cookie";a:5:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:27:"The username (null: lookup)";s:11:"phpdoc_name";s:4:"name";}i:2;a:5:{s:4:"name";s:8:"password";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"The password";s:11:"phpdoc_name";s:8:"password";}}s:4:"name";s:19:"forum_create_cookie";s:11:"description";s:29:"Create a member login cookie.";s:5:"flags";a:0:{}}s:21:"forum_authorise_login";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"username";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:104:"The member username (null: don't use this in the authentication - but look it up using the ID if needed)";s:11:"phpdoc_name";s:8:"username";}i:1;a:5:{s:4:"name";s:6:"userid";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"userid";}i:2;a:5:{s:4:"name";s:15:"password_hashed";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:23:"The md5-hashed password";s:11:"phpdoc_name";s:15:"password_hashed";}i:3;a:5:{s:4:"name";s:12:"password_raw";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:16:"The raw password";s:11:"phpdoc_name";s:12:"password_raw";}i:4;a:7:{s:4:"name";s:11:"from_cookie";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether this is a cookie login";s:11:"phpdoc_name";s:11:"from_cookie";}}s:4:"name";s:21:"forum_authorise_login";s:11:"description";s:294:"Find if the given member ID and password is valid. If username is null, then the member ID is used instead.All authorisation, cookies, and form-logins, are passed through this function.Some forums do cookie logins differently, so a Boolean is passed in to indicate whether it is a cookie login.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:80:"A map of 'id' and 'error'. If 'id' is null, an error occurred and 'error' is set";}}s:13:"get_member_ip";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:13:"get_member_ip";s:11:"description";s:49:"Get a first known IP address of the given member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:2:"IP";s:11:"description";s:14:"The IP address";}}s:14:"get_member_row";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:14:"get_member_row";s:11:"description";s:42:"Gets a whole member row from the database.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:37:"The member row (null: no such member)";}}s:20:"get_member_row_field";a:6:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:20:"The field identifier";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:20:"get_member_row_field";s:11:"description";s:53:"Gets a named field of a member row from the database.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:9:"The field";}}s:19:"add_member_to_group";a:5:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}i:1;a:5:{s:4:"name";s:8:"group_id";s:3:"ref";b:0;s:4:"type";s:5:"GROUP";s:11:"description";s:16:"The usergroup ID";s:11:"phpdoc_name";s:8:"group_id";}}s:4:"name";s:19:"add_member_to_group";s:11:"description";s:28:"Add a member to a usergroup.";s:5:"flags";a:0:{}}s:24:"remove_member_from_group";a:5:{s:8:"filename";s:21:"sources/forum/smf.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}i:1;a:5:{s:4:"name";s:8:"group_id";s:3:"ref";b:0;s:4:"type";s:5:"GROUP";s:11:"description";s:16:"The usergroup ID";s:11:"phpdoc_name";s:8:"group_id";}}s:4:"name";s:24:"remove_member_from_group";s:11:"description";s:33:"Remove a member from a usergroup.";s:5:"flags";a:0:{}}}s:4:"name";s:16:"Forum_driver_smf";s:7:"comment";b:1;}s:17:"Forum_driver_smf2";a:3:{s:9:"functions";a:73:{s:8:"check_db";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:0:{}s:4:"name";s:8:"check_db";s:11:"description";s:54:"Check the connected DB is valid for this forum driver.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:19:"Whether it is valid";}}s:15:"get_top_posters";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"limit";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:47:"The limit to the number of top posters to fetch";s:11:"phpdoc_name";s:5:"limit";}}s:4:"name";s:15:"get_top_posters";s:11:"description";s:62:"Get the rows for the top given number of posters on the forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:57:"The rows for the given number of top posters in the forum";}}s:14:"forum_get_lang";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:45:"The member who's language needs to be fetched";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:14:"forum_get_lang";s:11:"description";s:135:"Attempt to to find the member's language from their forum profile. It converts between language-identifiers using a map (lang/map.ini).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:14:"?LANGUAGE_NAME";s:11:"description";s:37:"The member's language (null: unknown)";}}s:20:"is_cookie_login_name";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"is_cookie_login_name";s:11:"description";s:74:"Find if the login cookie contains the login name instead of the member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:61:"Whether the login cookie contains a login name or a member ID";}}s:9:"is_hashed";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"is_hashed";s:11:"description";s:35:"Find if login cookie is md5-hashed.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether the login cookie is md5-hashed";}}s:12:"get_guest_id";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"get_guest_id";s:11:"description";s:45:"Find the member ID of the forum guest member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"MEMBER";s:11:"description";s:39:"The member ID of the forum guest member";}}s:25:"get_drivered_table_prefix";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"get_drivered_table_prefix";s:11:"description";s:46:"Get the forums' table prefix for the database.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:31:"The forum database table prefix";}}s:27:"install_create_custom_field";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:32:"The name of the new custom field";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:6:"length";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:34:"The length of the new custom field";s:11:"phpdoc_name";s:6:"length";}}s:4:"name";s:27:"install_create_custom_field";s:11:"description";s:145:"Add the specified custom field to the forum (some forums implemented this using proper custom profile fields, others through adding a new field).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether the custom field was created successfully";}}s:17:"install_specifics";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"install_specifics";s:11:"description";s:435:"Get an array of attributes to take in from the installer. Almost all forums require a table prefix, which the requirement there-of is defined through this function.The attributes have 4 values in an array- name, the name of the attribute for _config.php- default, the default value (perhaps obtained through autodetection from forum config)- description, a textual description of the attributes- title, a textual title of the attribute";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:28:"The attributes for the forum";}}s:22:"install_test_load_from";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:27:"The path in which to search";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:22:"install_test_load_from";s:11:"description";s:44:"Searches for forum auto-config at this path.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:44:"Whether the forum auto-config could be found";}}s:28:"install_get_path_search_list";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:0:{}s:4:"name";s:28:"install_get_path_search_list";s:11:"description";s:46:"Get an array of paths to search for config at.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:49:"The paths in which to search for the forum config";}}s:20:"get_emoticon_chooser";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:10:"field_name";s:7:"default";s:4:"post";s:11:"default_raw";s:6:"'post'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:53:"The ID of the form field the emoticon chooser adds to";s:11:"phpdoc_name";s:10:"field_name";}}s:4:"name";s:20:"get_emoticon_chooser";s:11:"description";s:33:"Get an emoticon chooser template.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:29:"The emoticon chooser template";}}s:9:"pin_topic";a:5:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:12:"The topic ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:3:"pin";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"True: pin it, False: unpin it";s:11:"phpdoc_name";s:3:"pin";}}s:4:"name";s:9:"pin_topic";s:11:"description";s:12:"Pin a topic.";s:5:"flags";a:0:{}}s:16:"set_custom_field";a:5:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:77:"The field name (e.g. "firstname" for the CPF with a title of "cms_firstname")";s:11:"phpdoc_name";s:5:"field";}i:2;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:9:"The value";s:11:"phpdoc_name";s:5:"value";}}s:4:"name";s:16:"set_custom_field";s:11:"description";s:110:"Set a custom profile field's value, if the custom field exists. Only works on specially-named (titled) fields.";s:5:"flags";a:0:{}}s:17:"get_custom_fields";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:17:"get_custom_fields";s:11:"description";s:62:"Get custom profile fields values for all 'cms_' prefixed keys.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:71:"A map of the custom profile fields, key_suffix=>value (null: no fields)";}}s:8:"get_mrow";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:15:"The member name";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:8:"get_mrow";s:11:"description";s:50:"Get a member row for the member of the given name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:38:"The profile-row (null: could not find)";}}s:10:"mrow_group";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"r";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:10:"mrow_group";s:11:"description";s:54:"From a member row, get the member's primary usergroup.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"GROUP";s:11:"description";s:30:"The member's primary usergroup";}}s:7:"mrow_id";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"r";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:7:"mrow_id";s:11:"description";s:46:"From a member row, get the member's member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";}}s:14:"mrow_lastvisit";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"r";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:14:"mrow_lastvisit";s:11:"description";s:52:"From a member row, get the member's last visit date.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:4:"TIME";s:11:"description";s:19:"The last visit date";}}s:13:"mrow_username";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"r";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:13:"mrow_username";s:11:"description";s:41:"From a member row, get the member's name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:15:"The member name";}}s:10:"mrow_email";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"r";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:10:"mrow_email";s:11:"description";s:51:"From a member row, get the member's e-mail address.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:25:"The member e-mail address";}}s:20:"get_member_photo_url";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:20:"get_member_photo_url";s:11:"description";s:56:"Get the photo thumbnail URL for the specified member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:21:"The URL (blank: none)";}}s:21:"get_member_avatar_url";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:21:"get_member_avatar_url";s:11:"description";s:47:"Get the avatar URL for the specified member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:21:"The URL (blank: none)";}}s:15:"member_home_url";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:15:"member_home_url";s:11:"description";s:57:"Get a URL to the specified member's home (control panel).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:27:"The URL to the members home";}}s:19:"_member_profile_url";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:19:"_member_profile_url";s:11:"description";s:44:"Get a URL to the specified member's profile.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:29:"The URL to the member profile";}}s:9:"_join_url";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"_join_url";s:11:"description";s:74:"Get a URL to the registration page (for people to create member accounts).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:32:"The URL to the registration page";}}s:17:"_users_online_url";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"_users_online_url";s:11:"description";s:37:"Get a URL to the members-online page.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:34:"The URL to the members-online page";}}s:14:"_member_pm_url";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:14:"_member_pm_url";s:11:"description";s:65:"Get a URL to send a private/personal message to the given member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:44:"The URL to the private/personal message page";}}s:10:"_forum_url";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:12:"The forum ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:10:"_forum_url";s:11:"description";s:33:"Get a URL to the specified forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:30:"The URL to the specified forum";}}s:18:"forum_id_from_name";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:10:"forum_name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:14:"The forum name";s:11:"phpdoc_name";s:10:"forum_name";}}s:4:"name";s:18:"forum_id_from_name";s:11:"description";s:35:"Get the forum ID from a forum name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?integer";s:11:"description";s:30:"The forum ID (null: not found)";}}s:34:"find_topic_id_for_topic_identifier";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"forum";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:19:"The forum name / ID";s:11:"phpdoc_name";s:5:"forum";}i:1;a:5:{s:4:"name";s:16:"topic_identifier";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:20:"The topic identifier";s:11:"phpdoc_name";s:16:"topic_identifier";}}s:4:"name";s:34:"find_topic_id_for_topic_identifier";s:11:"description";s:157:"Get the topic ID from a topic identifier in the specified forum. It is used by comment topics, which means that the unique-topic-name assumption holds valid.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?integer";s:11:"description";s:30:"The topic ID (null: not found)";}}s:21:"make_post_forum_topic";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:16:{i:0;a:5:{s:4:"name";s:10:"forum_name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:14:"The forum name";s:11:"phpdoc_name";s:10:"forum_name";}i:1;a:5:{s:4:"name";s:16:"topic_identifier";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:58:"The topic identifier (usually _)";s:11:"phpdoc_name";s:16:"topic_identifier";}i:2;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}i:3;a:5:{s:4:"name";s:10:"post_title";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:14:"The post title";s:11:"phpdoc_name";s:10:"post_title";}i:4;a:5:{s:4:"name";s:4:"post";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:34:"The post content in Comcode format";s:11:"phpdoc_name";s:4:"post";}i:5;a:5:{s:4:"name";s:13:"content_title";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:77:"The topic title; must be same as content title if this is for a comment topic";s:11:"phpdoc_name";s:13:"content_title";}i:6;a:5:{s:4:"name";s:37:"topic_identifier_encapsulation_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:204:"This is put together with the topic identifier to make a more-human-readable topic title or topic description (hopefully the latter and a $content_title title, but only if the forum supports descriptions)";s:11:"phpdoc_name";s:37:"topic_identifier_encapsulation_prefix";}i:7;a:7:{s:4:"name";s:11:"content_url";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?URLPATH";s:11:"description";s:50:"URL to the content (null: do not make spacer post)";s:11:"phpdoc_name";s:11:"content_url";}i:8;a:7:{s:4:"name";s:4:"time";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:5:"?TIME";s:11:"description";s:38:"The post time (null: use current time)";s:11:"phpdoc_name";s:4:"time";}i:9;a:7:{s:4:"name";s:2:"ip";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:3:"?IP";s:11:"description";s:58:"The post IP address (null: use current members IP address)";s:11:"phpdoc_name";s:2:"ip";}i:10;a:7:{s:4:"name";s:9:"validated";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:146:"Whether the post is validated (null: unknown, find whether it needs to be marked unvalidated initially). This only works with the Conversr driver.";s:11:"phpdoc_name";s:9:"validated";}i:11;a:7:{s:4:"name";s:15:"topic_validated";s:7:"default";i:1;s:11:"default_raw";s:1:"1";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:147:"Whether the topic is validated (null: unknown, find whether it needs to be marked unvalidated initially). This only works with the Conversr driver.";s:11:"phpdoc_name";s:15:"topic_validated";}i:12;a:7:{s:4:"name";s:16:"skip_post_checks";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether to skip post checks";s:11:"phpdoc_name";s:16:"skip_post_checks";}i:13;a:7:{s:4:"name";s:20:"poster_name_if_guest";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:22:"The name of the poster";s:11:"phpdoc_name";s:20:"poster_name_if_guest";}i:14;a:7:{s:4:"name";s:9:"parent_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:39:"ID of post being replied to (null: N/A)";s:11:"phpdoc_name";s:9:"parent_id";}i:15;a:7:{s:4:"name";s:10:"staff_only";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:42:"Whether the reply is only visible to staff";s:11:"phpdoc_name";s:10:"staff_only";}}s:4:"name";s:21:"make_post_forum_topic";s:11:"description";s:466:"Makes a post in the specified forum, in the specified topic according to the given specifications. If the topic doesn't exist, it is created along with a spacer-post.Spacer posts exist in order to allow staff to delete the first true post in a topic. Without spacers, this would not be possible with most forum systems. They also serve to provide meta information on the topic that cannot be encoded in the title (such as a link to the content being commented upon).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:63:"Topic ID (may be null), and whether a hidden post has been made";}}s:21:"get_forum_topic_posts";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:8:"topic_id";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:12:"The topic ID";s:11:"phpdoc_name";s:8:"topic_id";}i:1;a:5:{s:4:"name";s:5:"count";s:3:"ref";b:1;s:4:"type";s:7:"integer";s:11:"description";s:52:"The comment count will be returned here by reference";s:11:"phpdoc_name";s:5:"count";}i:2;a:7:{s:4:"name";s:3:"max";s:7:"default";i:100;s:11:"default_raw";s:3:"100";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:28:"Maximum comments to returned";s:11:"phpdoc_name";s:3:"max";}i:3;a:7:{s:4:"name";s:5:"start";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:19:"Comment to start at";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:9:"mark_read";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:62:"Whether to mark the topic read (ignored for this forum driver)";s:11:"phpdoc_name";s:9:"mark_read";}i:5;a:7:{s:4:"name";s:7:"reverse";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:26:"Whether to show in reverse";s:11:"phpdoc_name";s:7:"reverse";}}s:4:"name";s:21:"get_forum_topic_posts";s:11:"description";s:54:"Get an array of maps for the topic in the given forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:106:"The array of maps (Each map is: title, message, member, date) (-1 for no such forum, -2 for no such topic)";}}s:9:"topic_url";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:12:"The topic ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:5:"forum";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"The forum ID";s:11:"phpdoc_name";s:5:"forum";}}s:4:"name";s:9:"topic_url";s:11:"description";s:133:"Get a URL to the specified topic ID. Most forums don't require the second parameter, but some do, so it is required in the interface.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:20:"The URL to the topic";}}s:8:"post_url";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:11:"The post ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:5:"forum";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"The forum ID";s:11:"phpdoc_name";s:5:"forum";}}s:4:"name";s:8:"post_url";s:11:"description";s:35:"Get a URL to the specified post ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:19:"The URL to the post";}}s:17:"show_forum_topics";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:39:"The forum name or an array of forum IDs";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:5:"limit";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:9:"The limit";s:11:"phpdoc_name";s:5:"limit";}i:2;a:5:{s:4:"name";s:5:"start";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:18:"The start position";s:11:"phpdoc_name";s:5:"start";}i:3;a:5:{s:4:"name";s:8:"max_rows";s:3:"ref";b:1;s:4:"type";s:7:"integer";s:11:"description";s:54:"The total rows (not a parameter: returns by reference)";s:11:"phpdoc_name";s:8:"max_rows";}i:4;a:7:{s:4:"name";s:18:"filter_topic_title";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:22:"The topic title filter";s:11:"phpdoc_name";s:18:"filter_topic_title";}i:5;a:7:{s:4:"name";s:16:"show_first_posts";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether to show the first posts";s:11:"phpdoc_name";s:16:"show_first_posts";}i:6;a:8:{s:4:"name";s:8:"date_key";s:7:"default";s:8:"lasttime";s:11:"default_raw";s:10:"'lasttime'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"The date key to sort by";s:11:"phpdoc_name";s:8:"date_key";s:3:"set";s:18:"lasttime firsttime";}i:7;a:7:{s:4:"name";s:3:"hot";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether to limit to hot topics";s:11:"phpdoc_name";s:3:"hot";}i:8;a:7:{s:4:"name";s:24:"filter_topic_description";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:28:"The topic description filter";s:11:"phpdoc_name";s:24:"filter_topic_description";}}s:4:"name";s:17:"show_forum_topics";s:11:"description";s:405:"Get an array of topics in the given forum. Each topic is an array with the following attributes:- id, the topic ID- title, the topic title- lastusername, the username of the last poster- lasttime, the timestamp of the last reply- closed, a Boolean for whether the topic is currently closed or not- firsttitle, the title of the first post- firstpost, the first post (only set if $show_first_posts was true)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:33:"The array of topics (null: error)";}}s:18:"member_group_query";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:6:"groups";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:23:"The array of usergroups";s:11:"phpdoc_name";s:6:"groups";}i:1;a:7:{s:4:"name";s:3:"max";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:170:"Return up to this many entries for primary members and this many entries for secondary members (null: no limit, only use no limit if querying very restricted usergroups!)";s:11:"phpdoc_name";s:3:"max";}i:2;a:7:{s:4:"name";s:5:"start";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:80:"Return primary members after this offset and secondary members after this offset";s:11:"phpdoc_name";s:5:"start";}}s:4:"name";s:18:"member_group_query";s:11:"description";s:81:"Get an array of members who are in at least one of the given array of usergroups.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:39:"The array of members (null: no members)";}}s:19:"get_previous_member";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:26:"The member ID to decrement";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:19:"get_previous_member";s:11:"description";s:53:"This is the opposite of the get_next_member function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?MEMBER";s:11:"description";s:49:"The previous member ID (null: no previous member)";}}s:15:"get_next_member";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:26:"The member ID to increment";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:15:"get_next_member";s:11:"description";s:146:"Get the member ID of the next member after the given one, or null.It cannot be assumed there are no gaps in member IDs, as members may be deleted.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?MEMBER";s:11:"description";s:41:"The next member ID (null: no next member)";}}s:8:"probe_ip";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"ip";s:3:"ref";b:0;s:4:"type";s:2:"IP";s:11:"description";s:14:"The IP address";s:11:"phpdoc_name";s:2:"ip";}}s:4:"name";s:8:"probe_ip";s:11:"description";s:46:"Try to find a member with the given IP address";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"The distinct rows found";}}s:13:"_get_username";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:13:"_get_username";s:11:"description";s:152:"Get the name relating to the specified member ID.If this returns null, then the member has been deleted. Always take potential null output into account.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:38:"The member name (null: member deleted)";}}s:15:"get_displayname";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"username";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"The username";s:11:"phpdoc_name";s:8:"username";}}s:4:"name";s:15:"get_displayname";s:11:"description";s:117:"Get the display name of a username.If no display name generator is configured, this will be the same as the username.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:16:"The display name";}}s:25:"_get_member_email_address";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:25:"_get_member_email_address";s:11:"description";s:51:"Get the e-mail address for the specified member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:18:"The e-mail address";}}s:24:"get_member_email_allowed";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:24:"get_member_email_allowed";s:11:"description";s:49:"Find if this member may have e-mails sent to them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:48:"Whether the member may have e-mails sent to them";}}s:25:"get_member_join_timestamp";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:25:"get_member_join_timestamp";s:11:"description";s:42:"Get the timestamp of a member's join date.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:4:"TIME";s:11:"description";s:13:"The timestamp";}}s:20:"get_matching_members";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:7:"pattern";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:11:"The pattern";s:11:"phpdoc_name";s:7:"pattern";}i:1;a:7:{s:4:"name";s:5:"limit";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:76:"Maximum number to return (limits to the most recent active) (null: no limit)";s:11:"phpdoc_name";s:5:"limit";}}s:4:"name";s:20:"get_matching_members";s:11:"description";s:64:"Find all members with a name matching the given SQL LIKE string.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:47:"The array of matched members (null: none found)";}}s:14:"get_post_count";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:14:"get_post_count";s:11:"description";s:34:"Get the given member's post count.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:14:"The post count";}}s:15:"get_topic_count";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:15:"get_topic_count";s:11:"description";s:35:"Get the given member's topic count.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"The topic count";}}s:9:"is_banned";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:9:"is_banned";s:11:"description";s:42:"Find out if the given member ID is banned.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:28:"Whether the member is banned";}}s:11:"get_emo_dir";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_emo_dir";s:11:"description";s:35:"Find the base URL to the emoticons.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:12:"The base URL";}}s:14:"find_emoticons";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"find_emoticons";s:11:"description";s:162:"Get a map between emoticon codes and templates representing the HTML-image-code for this emoticon. The emoticons presented of course depend on the forum involved.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:7:"The map";}}s:13:"get_skin_list";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_skin_list";s:11:"description";s:44:"Find a list of all forum skins (aka themes).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"The list of skins";}}s:10:"_get_theme";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:20:"skip_member_specific";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:39:"Whether to avoid member-specific lookup";s:11:"phpdoc_name";s:20:"skip_member_specific";}}s:4:"name";s:10:"_get_theme";s:11:"description";s:395:"Try to find the theme that the logged-in/guest member is using, and map it to a Composr theme.The themes/map.ini file functions to provide this mapping between forum themes, and Composr themes, and has a slightly different meaning for different forum drivers. For example, some drivers map the forum themes theme directory to the Composr theme name, while others made the humanly readeable name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:9:"The theme";}}s:9:"_is_staff";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:9:"_is_staff";s:11:"description";s:58:"Find if the specified member ID is marked as staff or not.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether the member is staff";}}s:15:"_is_super_admin";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:15:"_is_super_admin";s:11:"description";s:66:"Find if the specified member ID is marked as a super admin or not.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:35:"Whether the member is a super admin";}}s:20:"get_num_users_forums";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"get_num_users_forums";s:11:"description";s:57:"Get the number of members currently online on the forums.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:21:"The number of members";}}s:11:"get_members";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_members";s:11:"description";s:50:"Get the number of members registered on the forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:21:"The number of members";}}s:10:"get_topics";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"get_topics";s:11:"description";s:44:"Get the total topics ever made on the forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:20:"The number of topics";}}s:19:"get_num_forum_posts";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"get_num_forum_posts";s:11:"description";s:43:"Get the total posts ever made on the forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:19:"The number of posts";}}s:24:"_get_num_new_forum_posts";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"_get_num_new_forum_posts";s:11:"description";s:34:"Get the number of new forum posts.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:19:"The number of posts";}}s:24:"get_member_from_username";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:15:"The member name";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:24:"get_member_from_username";s:11:"description";s:49:"Get a member ID from the given member's username.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";}}s:23:"_get_super_admin_groups";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"_get_super_admin_groups";s:11:"description";s:36:"Get the IDs of the admin usergroups.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"The admin usergroup ids";}}s:21:"_get_moderator_groups";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"_get_moderator_groups";s:11:"description";s:211:"Get the IDs of the moderator usergroups.It should not be assumed that a member only has one usergroup - this depends upon the forum the driver works for. It also does not take the staff site filter into account.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:27:"The moderator usergroup ids";}}s:19:"_get_usergroup_list";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"_get_usergroup_list";s:11:"description";s:29:"Get the forum usergroup list.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:18:"The usergroup list";}}s:19:"_get_members_groups";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:19:"_get_members_groups";s:11:"description";s:60:"Get the forum usergroup relating to the specified member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:29:"The array of forum usergroups";}}s:9:"forum_md5";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:44:"The data to hash (the password in actuality)";s:11:"phpdoc_name";s:4:"data";}i:1;a:5:{s:4:"name";s:3:"key";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:108:"The string converted member-ID in actuality, although this function is more general. For cookie logins, 'ys'";s:11:"phpdoc_name";s:3:"key";}i:2;a:7:{s:4:"name";s:10:"just_first";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether to just get the old style hash";s:11:"phpdoc_name";s:10:"just_first";}}s:4:"name";s:9:"forum_md5";s:11:"description";s:43:"The hashing algorithm of this forum driver.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:15:"The hashed data";}}s:19:"forum_create_cookie";a:5:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:27:"The username (null: lookup)";s:11:"phpdoc_name";s:4:"name";}i:2;a:5:{s:4:"name";s:8:"password";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"The password";s:11:"phpdoc_name";s:8:"password";}}s:4:"name";s:19:"forum_create_cookie";s:11:"description";s:29:"Create a member login cookie.";s:5:"flags";a:0:{}}s:21:"forum_authorise_login";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"username";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:104:"The member username (null: don't use this in the authentication - but look it up using the ID if needed)";s:11:"phpdoc_name";s:8:"username";}i:1;a:5:{s:4:"name";s:6:"userid";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"userid";}i:2;a:5:{s:4:"name";s:15:"password_hashed";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:23:"The md5-hashed password";s:11:"phpdoc_name";s:15:"password_hashed";}i:3;a:5:{s:4:"name";s:12:"password_raw";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:16:"The raw password";s:11:"phpdoc_name";s:12:"password_raw";}i:4;a:7:{s:4:"name";s:11:"from_cookie";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether this is a cookie login";s:11:"phpdoc_name";s:11:"from_cookie";}}s:4:"name";s:21:"forum_authorise_login";s:11:"description";s:294:"Find if the given member ID and password is valid. If username is null, then the member ID is used instead.All authorisation, cookies, and form-logins, are passed through this function.Some forums do cookie logins differently, so a Boolean is passed in to indicate whether it is a cookie login.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:80:"A map of 'id' and 'error'. If 'id' is null, an error occurred and 'error' is set";}}s:13:"get_member_ip";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:13:"get_member_ip";s:11:"description";s:49:"Get a first known IP address of the given member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:2:"IP";s:11:"description";s:14:"The IP address";}}s:14:"get_member_row";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:14:"get_member_row";s:11:"description";s:42:"Gets a whole member row from the database.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:37:"The member row (null: no such member)";}}s:20:"get_member_row_field";a:6:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:20:"The field identifier";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:20:"get_member_row_field";s:11:"description";s:53:"Gets a named field of a member row from the database.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:9:"The field";}}s:19:"add_member_to_group";a:5:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}i:1;a:5:{s:4:"name";s:8:"group_id";s:3:"ref";b:0;s:4:"type";s:5:"GROUP";s:11:"description";s:16:"The usergroup ID";s:11:"phpdoc_name";s:8:"group_id";}}s:4:"name";s:19:"add_member_to_group";s:11:"description";s:28:"Add a member to a usergroup.";s:5:"flags";a:0:{}}s:24:"remove_member_from_group";a:5:{s:8:"filename";s:22:"sources/forum/smf2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}i:1;a:5:{s:4:"name";s:8:"group_id";s:3:"ref";b:0;s:4:"type";s:5:"GROUP";s:11:"description";s:16:"The usergroup ID";s:11:"phpdoc_name";s:8:"group_id";}}s:4:"name";s:24:"remove_member_from_group";s:11:"description";s:33:"Remove a member from a usergroup.";s:5:"flags";a:0:{}}}s:4:"name";s:17:"Forum_driver_smf2";s:7:"comment";b:1;}s:17:"Forum_driver_vb22";a:3:{s:9:"functions";a:13:{s:9:"is_hashed";a:6:{s:8:"filename";s:22:"sources/forum/vb22.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"is_hashed";s:11:"description";s:35:"Find if login cookie is md5-hashed.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether the login cookie is md5-hashed";}}s:17:"install_specifics";a:6:{s:8:"filename";s:22:"sources/forum/vb22.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"install_specifics";s:11:"description";s:435:"Get an array of attributes to take in from the installer. Almost all forums require a table prefix, which the requirement there-of is defined through this function.The attributes have 4 values in an array- name, the name of the attribute for _config.php- default, the default value (perhaps obtained through autodetection from forum config)- description, a textual description of the attributes- title, a textual title of the attribute";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:28:"The attributes for the forum";}}s:22:"install_test_load_from";a:6:{s:8:"filename";s:22:"sources/forum/vb22.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:27:"The path in which to search";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:22:"install_test_load_from";s:11:"description";s:44:"Searches for forum auto-config at this path.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:44:"Whether the forum auto-config could be found";}}s:28:"install_get_path_search_list";a:6:{s:8:"filename";s:22:"sources/forum/vb22.php";s:10:"parameters";a:0:{}s:4:"name";s:28:"install_get_path_search_list";s:11:"description";s:46:"Get an array of paths to search for config at.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:49:"The paths in which to search for the forum config";}}s:14:"mrow_lastvisit";a:6:{s:8:"filename";s:22:"sources/forum/vb22.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"r";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:14:"mrow_lastvisit";s:11:"description";s:52:"From a member row, get the member's last visit date.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:4:"TIME";s:11:"description";s:19:"The last visit date";}}s:9:"is_banned";a:6:{s:8:"filename";s:22:"sources/forum/vb22.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:9:"is_banned";s:11:"description";s:42:"Find out if the given member ID is banned.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:28:"Whether the member is banned";}}s:9:"_is_staff";a:6:{s:8:"filename";s:22:"sources/forum/vb22.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:9:"_is_staff";s:11:"description";s:58:"Find if the specified member ID is marked as staff or not.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether the member is staff";}}s:15:"_is_super_admin";a:6:{s:8:"filename";s:22:"sources/forum/vb22.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:15:"_is_super_admin";s:11:"description";s:66:"Find if the specified member ID is marked as a super admin or not.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:35:"Whether the member is a super admin";}}s:23:"_get_super_admin_groups";a:6:{s:8:"filename";s:22:"sources/forum/vb22.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"_get_super_admin_groups";s:11:"description";s:36:"Get the IDs of the admin usergroups.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"The admin usergroup IDs";}}s:21:"_get_moderator_groups";a:6:{s:8:"filename";s:22:"sources/forum/vb22.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"_get_moderator_groups";s:11:"description";s:211:"Get the IDs of the moderator usergroups.It should not be assumed that a member only has one usergroup - this depends upon the forum the driver works for. It also does not take the staff site filter into account.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:27:"The moderator usergroup IDs";}}s:19:"_get_usergroup_list";a:6:{s:8:"filename";s:22:"sources/forum/vb22.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"_get_usergroup_list";s:11:"description";s:29:"Get the forum usergroup list.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:18:"The usergroup list";}}s:19:"_get_members_groups";a:6:{s:8:"filename";s:22:"sources/forum/vb22.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:19:"_get_members_groups";s:11:"description";s:60:"Get the forum usergroup relating to the specified member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:29:"The array of forum usergroups";}}s:21:"forum_authorise_login";a:6:{s:8:"filename";s:22:"sources/forum/vb22.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"username";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:104:"The member username (null: don't use this in the authentication - but look it up using the ID if needed)";s:11:"phpdoc_name";s:8:"username";}i:1;a:5:{s:4:"name";s:6:"userid";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"userid";}i:2;a:5:{s:4:"name";s:15:"password_hashed";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:23:"The md5-hashed password";s:11:"phpdoc_name";s:15:"password_hashed";}i:3;a:5:{s:4:"name";s:12:"password_raw";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:16:"The raw password";s:11:"phpdoc_name";s:12:"password_raw";}i:4;a:7:{s:4:"name";s:12:"cookie_login";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether this is a cookie login";s:11:"phpdoc_name";s:12:"cookie_login";}}s:4:"name";s:21:"forum_authorise_login";s:11:"description";s:294:"Find if the given member ID and password is valid. If username is null, then the member ID is used instead.All authorisation, cookies, and form-logins, are passed through this function.Some forums do cookie logins differently, so a Boolean is passed in to indicate whether it is a cookie login.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:80:"A map of 'id' and 'error'. If 'id' is null, an error occurred and 'error' is set";}}}s:4:"name";s:17:"Forum_driver_vb22";s:7:"comment";b:1;}s:16:"Forum_driver_vb3";a:3:{s:9:"functions";a:15:{s:17:"get_custom_bbcode";a:6:{s:8:"filename";s:21:"sources/forum/vb3.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"get_custom_bbcode";s:11:"description";s:33:"Get a list of custom BBcode tags.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:92:"The list of tags (each list entry being a map, containing various standard named parameters)";}}s:9:"is_hashed";a:6:{s:8:"filename";s:21:"sources/forum/vb3.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"is_hashed";s:11:"description";s:35:"Find if login cookie is md5-hashed.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether the login cookie is md5-hashed";}}s:17:"install_specifics";a:6:{s:8:"filename";s:21:"sources/forum/vb3.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"install_specifics";s:11:"description";s:435:"Get an array of attributes to take in from the installer. Almost all forums require a table prefix, which the requirement there-of is defined through this function.The attributes have 4 values in an array- name, the name of the attribute for _config.php- default, the default value (perhaps obtained through autodetection from forum config)- description, a textual description of the attributes- title, a textual title of the attribute";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:28:"The attributes for the forum";}}s:22:"install_test_load_from";a:6:{s:8:"filename";s:21:"sources/forum/vb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:27:"The path in which to search";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:22:"install_test_load_from";s:11:"description";s:44:"Searches for forum auto-config at this path.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:44:"Whether the forum auto-config could be found";}}s:28:"install_get_path_search_list";a:6:{s:8:"filename";s:21:"sources/forum/vb3.php";s:10:"parameters";a:0:{}s:4:"name";s:28:"install_get_path_search_list";s:11:"description";s:46:"Get an array of paths to search for config at.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:49:"The paths in which to search for the forum config";}}s:14:"mrow_lastvisit";a:6:{s:8:"filename";s:21:"sources/forum/vb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"r";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:14:"mrow_lastvisit";s:11:"description";s:52:"From a member row, get the member's last visit date.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:4:"TIME";s:11:"description";s:19:"The last visit date";}}s:9:"is_banned";a:6:{s:8:"filename";s:21:"sources/forum/vb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:9:"is_banned";s:11:"description";s:42:"Find out if the given member ID is banned.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:28:"Whether the member is banned";}}s:9:"_is_staff";a:6:{s:8:"filename";s:21:"sources/forum/vb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:9:"_is_staff";s:11:"description";s:58:"Find if the specified member ID is marked as staff or not.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether the member is staff";}}s:15:"_is_super_admin";a:6:{s:8:"filename";s:21:"sources/forum/vb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:15:"_is_super_admin";s:11:"description";s:66:"Find if the specified member ID is marked as a super admin or not.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:35:"Whether the member is a super admin";}}s:23:"_get_super_admin_groups";a:6:{s:8:"filename";s:21:"sources/forum/vb3.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"_get_super_admin_groups";s:11:"description";s:36:"Get the IDs of the admin usergroups.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"The admin usergroup IDs";}}s:21:"_get_moderator_groups";a:6:{s:8:"filename";s:21:"sources/forum/vb3.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"_get_moderator_groups";s:11:"description";s:211:"Get the IDs of the moderator usergroups.It should not be assumed that a member only has one usergroup - this depends upon the forum the driver works for. It also does not take the staff site filter into account.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:27:"The moderator usergroup IDs";}}s:19:"_get_usergroup_list";a:6:{s:8:"filename";s:21:"sources/forum/vb3.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"_get_usergroup_list";s:11:"description";s:29:"Get the forum usergroup list.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:18:"The usergroup list";}}s:19:"_get_members_groups";a:6:{s:8:"filename";s:21:"sources/forum/vb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:19:"_get_members_groups";s:11:"description";s:60:"Get the forum usergroup relating to the specified member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:29:"The array of forum usergroups";}}s:19:"forum_create_cookie";a:5:{s:8:"filename";s:21:"sources/forum/vb3.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:27:"The username (null: lookup)";s:11:"phpdoc_name";s:4:"name";}i:2;a:5:{s:4:"name";s:8:"password";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"The password";s:11:"phpdoc_name";s:8:"password";}}s:4:"name";s:19:"forum_create_cookie";s:11:"description";s:29:"Create a member login cookie.";s:5:"flags";a:0:{}}s:21:"forum_authorise_login";a:6:{s:8:"filename";s:21:"sources/forum/vb3.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"username";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:104:"The member username (null: don't use this in the authentication - but look it up using the ID if needed)";s:11:"phpdoc_name";s:8:"username";}i:1;a:5:{s:4:"name";s:6:"userid";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"userid";}i:2;a:5:{s:4:"name";s:15:"password_hashed";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:23:"The md5-hashed password";s:11:"phpdoc_name";s:15:"password_hashed";}i:3;a:5:{s:4:"name";s:12:"password_raw";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:16:"The raw password";s:11:"phpdoc_name";s:12:"password_raw";}i:4;a:7:{s:4:"name";s:12:"cookie_login";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether this is a cookie login";s:11:"phpdoc_name";s:12:"cookie_login";}}s:4:"name";s:21:"forum_authorise_login";s:11:"description";s:294:"Find if the given member ID and password is valid. If username is null, then the member ID is used instead.All authorisation, cookies, and form-logins, are passed through this function.Some forums do cookie logins differently, so a Boolean is passed in to indicate whether it is a cookie login.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:80:"A map of 'id' and 'error'. If 'id' is null, an error occurred and 'error' is set";}}}s:4:"name";s:16:"Forum_driver_vb3";s:7:"comment";b:1;}s:17:"Forum_driver_wbb2";a:3:{s:9:"functions";a:12:{s:16:"_get_guest_group";a:6:{s:8:"filename";s:22:"sources/forum/wbb2.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"_get_guest_group";s:11:"description";s:47:"Get the ID of the usergroup that is for guests.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"GROUP";s:11:"description";s:19:"The guest usergroup";}}s:10:"mrow_group";a:6:{s:8:"filename";s:22:"sources/forum/wbb2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"r";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:10:"mrow_group";s:11:"description";s:54:"From a member row, get the member's primary usergroup.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"GROUP";s:11:"description";s:30:"The member's primary usergroup";}}s:18:"member_group_query";a:6:{s:8:"filename";s:22:"sources/forum/wbb2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:6:"groups";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:23:"The array of usergroups";s:11:"phpdoc_name";s:6:"groups";}i:1;a:7:{s:4:"name";s:3:"max";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:170:"Return up to this many entries for primary members and this many entries for secondary members (null: no limit, only use no limit if querying very restricted usergroups!)";s:11:"phpdoc_name";s:3:"max";}i:2;a:7:{s:4:"name";s:5:"start";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:80:"Return primary members after this offset and secondary members after this offset";s:11:"phpdoc_name";s:5:"start";}}s:4:"name";s:18:"member_group_query";s:11:"description";s:81:"Get an array of members who are in at least one of the given array of usergroups.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:39:"The array of members (null: no members)";}}s:9:"is_banned";a:6:{s:8:"filename";s:22:"sources/forum/wbb2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:9:"is_banned";s:11:"description";s:42:"Find out if the given member ID is banned.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:28:"Whether the member is banned";}}s:13:"get_skin_list";a:6:{s:8:"filename";s:22:"sources/forum/wbb2.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_skin_list";s:11:"description";s:44:"Find a list of all forum skins (aka themes).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"The list of skins";}}s:10:"_get_theme";a:6:{s:8:"filename";s:22:"sources/forum/wbb2.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:20:"skip_member_specific";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:39:"Whether to avoid member-specific lookup";s:11:"phpdoc_name";s:20:"skip_member_specific";}}s:4:"name";s:10:"_get_theme";s:11:"description";s:395:"Try to find the theme that the logged-in/guest member is using, and map it to a Composr theme.The themes/map.ini file functions to provide this mapping between forum themes, and Composr themes, and has a slightly different meaning for different forum drivers. For example, some drivers map the forum themes theme directory to the Composr theme name, while others made the humanly readeable name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:9:"The theme";}}s:9:"_is_staff";a:6:{s:8:"filename";s:22:"sources/forum/wbb2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:9:"_is_staff";s:11:"description";s:58:"Find if the specified member ID is marked as staff or not.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether the member is staff";}}s:15:"_is_super_admin";a:6:{s:8:"filename";s:22:"sources/forum/wbb2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:15:"_is_super_admin";s:11:"description";s:66:"Find if the specified member ID is marked as a super admin or not.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:35:"Whether the member is a super admin";}}s:23:"_get_super_admin_groups";a:6:{s:8:"filename";s:22:"sources/forum/wbb2.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"_get_super_admin_groups";s:11:"description";s:36:"Get the IDs of the admin usergroups.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"The admin usergroup IDs";}}s:21:"_get_moderator_groups";a:6:{s:8:"filename";s:22:"sources/forum/wbb2.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"_get_moderator_groups";s:11:"description";s:211:"Get the IDs of the moderator usergroups.It should not be assumed that a member only has one usergroup - this depends upon the forum the driver works for. It also does not take the staff site filter into account.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:27:"The moderator usergroup IDs";}}s:19:"_get_usergroup_list";a:6:{s:8:"filename";s:22:"sources/forum/wbb2.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"_get_usergroup_list";s:11:"description";s:29:"Get the forum usergroup list.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:18:"The usergroup list";}}s:19:"_get_members_groups";a:6:{s:8:"filename";s:22:"sources/forum/wbb2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:19:"_get_members_groups";s:11:"description";s:60:"Get the forum usergroup relating to the specified member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:29:"The array of forum usergroups";}}}s:4:"name";s:17:"Forum_driver_wbb2";s:7:"comment";b:1;}s:18:"Forum_driver_wbb22";a:3:{s:9:"functions";a:12:{s:16:"_get_guest_group";a:6:{s:8:"filename";s:23:"sources/forum/wbb22.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"_get_guest_group";s:11:"description";s:47:"Get the ID of the usergroup that is for guests.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"GROUP";s:11:"description";s:19:"The guest usergroup";}}s:10:"mrow_group";a:6:{s:8:"filename";s:23:"sources/forum/wbb22.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"r";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:10:"mrow_group";s:11:"description";s:54:"From a member row, get the member's primary usergroup.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"GROUP";s:11:"description";s:30:"The member's primary usergroup";}}s:18:"member_group_query";a:6:{s:8:"filename";s:23:"sources/forum/wbb22.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:6:"groups";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:23:"The array of usergroups";s:11:"phpdoc_name";s:6:"groups";}i:1;a:7:{s:4:"name";s:3:"max";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:170:"Return up to this many entries for primary members and this many entries for secondary members (null: no limit, only use no limit if querying very restricted usergroups!)";s:11:"phpdoc_name";s:3:"max";}i:2;a:7:{s:4:"name";s:5:"start";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:80:"Return primary members after this offset and secondary members after this offset";s:11:"phpdoc_name";s:5:"start";}}s:4:"name";s:18:"member_group_query";s:11:"description";s:81:"Get an array of members who are in at least one of the given array of usergroups.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:39:"The array of members (null: no members)";}}s:9:"is_banned";a:6:{s:8:"filename";s:23:"sources/forum/wbb22.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:9:"is_banned";s:11:"description";s:42:"Find out if the given member ID is banned.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:28:"Whether the member is banned";}}s:13:"get_skin_list";a:6:{s:8:"filename";s:23:"sources/forum/wbb22.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_skin_list";s:11:"description";s:44:"Find a list of all forum skins (aka themes).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"The list of skins";}}s:10:"_get_theme";a:6:{s:8:"filename";s:23:"sources/forum/wbb22.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:20:"skip_member_specific";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:39:"Whether to avoid member-specific lookup";s:11:"phpdoc_name";s:20:"skip_member_specific";}}s:4:"name";s:10:"_get_theme";s:11:"description";s:395:"Try to find the theme that the logged-in/guest member is using, and map it to a Composr theme.The themes/map.ini file functions to provide this mapping between forum themes, and Composr themes, and has a slightly different meaning for different forum drivers. For example, some drivers map the forum themes theme directory to the Composr theme name, while others made the humanly readeable name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:9:"The theme";}}s:9:"_is_staff";a:6:{s:8:"filename";s:23:"sources/forum/wbb22.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:9:"_is_staff";s:11:"description";s:58:"Find if the specified member ID is marked as staff or not.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether the member is staff";}}s:15:"_is_super_admin";a:6:{s:8:"filename";s:23:"sources/forum/wbb22.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:15:"_is_super_admin";s:11:"description";s:66:"Find if the specified member ID is marked as a super admin or not.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:35:"Whether the member is a super admin";}}s:23:"_get_super_admin_groups";a:6:{s:8:"filename";s:23:"sources/forum/wbb22.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"_get_super_admin_groups";s:11:"description";s:36:"Get the IDs of the admin usergroups.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"The admin usergroup IDs";}}s:21:"_get_moderator_groups";a:6:{s:8:"filename";s:23:"sources/forum/wbb22.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"_get_moderator_groups";s:11:"description";s:211:"Get the IDs of the moderator usergroups.It should not be assumed that a member only has one usergroup - this depends upon the forum the driver works for. It also does not take the staff site filter into account.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:27:"The moderator usergroup IDs";}}s:19:"_get_usergroup_list";a:6:{s:8:"filename";s:23:"sources/forum/wbb22.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"_get_usergroup_list";s:11:"description";s:29:"Get the forum usergroup list.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:18:"The usergroup list";}}s:19:"_get_members_groups";a:6:{s:8:"filename";s:23:"sources/forum/wbb22.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:19:"_get_members_groups";s:11:"description";s:60:"Get the forum usergroup relating to the specified member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:29:"The array of forum usergroups";}}}s:4:"name";s:18:"Forum_driver_wbb22";s:7:"comment";b:1;}s:18:"Forum_driver_wowbb";a:3:{s:9:"functions";a:71:{s:8:"check_db";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:0:{}s:4:"name";s:8:"check_db";s:11:"description";s:54:"Check the connected DB is valid for this forum driver.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:19:"Whether it is valid";}}s:15:"get_top_posters";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"limit";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:47:"The limit to the number of top posters to fetch";s:11:"phpdoc_name";s:5:"limit";}}s:4:"name";s:15:"get_top_posters";s:11:"description";s:62:"Get the rows for the top given number of posters on the forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:57:"The rows for the given number of top posters in the forum";}}s:14:"forum_get_lang";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:45:"The member who's language needs to be fetched";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:14:"forum_get_lang";s:11:"description";s:135:"Attempt to to find the member's language from their forum profile. It converts between language-identifiers using a map (lang/map.ini).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:14:"?LANGUAGE_NAME";s:11:"description";s:37:"The member's language (null: unknown)";}}s:9:"is_hashed";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"is_hashed";s:11:"description";s:35:"Find if login cookie is md5-hashed.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether the login cookie is md5-hashed";}}s:20:"is_cookie_login_name";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"is_cookie_login_name";s:11:"description";s:74:"Find if the login cookie contains the login name instead of the member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:61:"Whether the login cookie contains a login name or a member ID";}}s:12:"get_guest_id";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"get_guest_id";s:11:"description";s:45:"Find the member ID of the forum guest member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"MEMBER";s:11:"description";s:39:"The member ID of the forum guest member";}}s:25:"get_drivered_table_prefix";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"get_drivered_table_prefix";s:11:"description";s:46:"Get the forums' table prefix for the database.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:31:"The forum database table prefix";}}s:27:"install_create_custom_field";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:32:"The name of the new custom field";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:6:"length";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:34:"The length of the new custom field";s:11:"phpdoc_name";s:6:"length";}}s:4:"name";s:27:"install_create_custom_field";s:11:"description";s:145:"Add the specified custom field to the forum (some forums implemented this using proper custom profile fields, others through adding a new field).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:49:"Whether the custom field was created successfully";}}s:17:"install_specifics";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"install_specifics";s:11:"description";s:435:"Get an array of attributes to take in from the installer. Almost all forums require a table prefix, which the requirement there-of is defined through this function.The attributes have 4 values in an array- name, the name of the attribute for _config.php- default, the default value (perhaps obtained through autodetection from forum config)- description, a textual description of the attributes- title, a textual title of the attribute";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:28:"The attributes for the forum";}}s:22:"install_test_load_from";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"path";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:27:"The path in which to search";s:11:"phpdoc_name";s:4:"path";}}s:4:"name";s:22:"install_test_load_from";s:11:"description";s:44:"Searches for forum auto-config at this path.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:44:"Whether the forum auto-config could be found";}}s:28:"install_get_path_search_list";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:0:{}s:4:"name";s:28:"install_get_path_search_list";s:11:"description";s:46:"Get an array of paths to search for config at.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:49:"The paths in which to search for the forum config";}}s:20:"get_emoticon_chooser";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:10:"field_name";s:7:"default";s:4:"post";s:11:"default_raw";s:6:"'post'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:53:"The ID of the form field the emoticon chooser adds to";s:11:"phpdoc_name";s:10:"field_name";}}s:4:"name";s:20:"get_emoticon_chooser";s:11:"description";s:33:"Get an emoticon chooser template.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:29:"The emoticon chooser template";}}s:9:"pin_topic";a:5:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:12:"The topic ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:3:"pin";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"True: pin it, False: unpin it";s:11:"phpdoc_name";s:3:"pin";}}s:4:"name";s:9:"pin_topic";s:11:"description";s:12:"Pin a topic.";s:5:"flags";a:0:{}}s:16:"set_custom_field";a:5:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:77:"The field name (e.g. "firstname" for the CPF with a title of "cms_firstname")";s:11:"phpdoc_name";s:5:"field";}i:2;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:9:"The value";s:11:"phpdoc_name";s:5:"value";}}s:4:"name";s:16:"set_custom_field";s:11:"description";s:110:"Set a custom profile field's value, if the custom field exists. Only works on specially-named (titled) fields.";s:5:"flags";a:0:{}}s:17:"get_custom_fields";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:17:"get_custom_fields";s:11:"description";s:62:"Get custom profile fields values for all 'cms_' prefixed keys.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:71:"A map of the custom profile fields, key_suffix=>value (null: no fields)";}}s:8:"get_mrow";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:15:"The member name";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:8:"get_mrow";s:11:"description";s:50:"Get a member row for the member of the given name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:38:"The profile-row (null: could not find)";}}s:10:"mrow_group";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"r";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:10:"mrow_group";s:11:"description";s:54:"From a member row, get the member's primary usergroup.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"GROUP";s:11:"description";s:30:"The member's primary usergroup";}}s:7:"mrow_id";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"r";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:7:"mrow_id";s:11:"description";s:46:"From a member row, get the member's member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";}}s:14:"mrow_lastvisit";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"r";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:14:"mrow_lastvisit";s:11:"description";s:52:"From a member row, get the member's last visit date.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:4:"TIME";s:11:"description";s:19:"The last visit date";}}s:13:"mrow_username";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"r";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:13:"mrow_username";s:11:"description";s:41:"From a member row, get the member's name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:15:"The member name";}}s:10:"mrow_email";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"r";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"The profile-row";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:10:"mrow_email";s:11:"description";s:51:"From a member row, get the member's e-mail address.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:25:"The member e-mail address";}}s:15:"member_home_url";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:15:"member_home_url";s:11:"description";s:57:"Get a URL to the specified member's home (control panel).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:27:"The URL to the members home";}}s:20:"get_member_photo_url";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:20:"get_member_photo_url";s:11:"description";s:56:"Get the photo thumbnail URL for the specified member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:21:"The URL (blank: none)";}}s:21:"get_member_avatar_url";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:21:"get_member_avatar_url";s:11:"description";s:47:"Get the avatar URL for the specified member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:21:"The URL (blank: none)";}}s:19:"_member_profile_url";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:19:"_member_profile_url";s:11:"description";s:44:"Get a URL to the specified member's profile.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:29:"The URL to the member profile";}}s:9:"_join_url";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"_join_url";s:11:"description";s:74:"Get a URL to the registration page (for people to create member accounts).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:32:"The URL to the registration page";}}s:17:"_users_online_url";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"_users_online_url";s:11:"description";s:37:"Get a URL to the members-online page.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:34:"The URL to the members-online page";}}s:14:"_member_pm_url";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:14:"_member_pm_url";s:11:"description";s:65:"Get a URL to send a private/personal message to the given member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:44:"The URL to the private/personal message page";}}s:10:"_forum_url";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:12:"The forum ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:10:"_forum_url";s:11:"description";s:33:"Get a URL to the specified forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:30:"The URL to the specified forum";}}s:18:"forum_id_from_name";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:10:"forum_name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:14:"The forum name";s:11:"phpdoc_name";s:10:"forum_name";}}s:4:"name";s:18:"forum_id_from_name";s:11:"description";s:35:"Get the forum ID from a forum name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?integer";s:11:"description";s:30:"The forum ID (null: not found)";}}s:34:"find_topic_id_for_topic_identifier";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"forum";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:19:"The forum name / ID";s:11:"phpdoc_name";s:5:"forum";}i:1;a:5:{s:4:"name";s:16:"topic_identifier";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:20:"The topic identifier";s:11:"phpdoc_name";s:16:"topic_identifier";}}s:4:"name";s:34:"find_topic_id_for_topic_identifier";s:11:"description";s:157:"Get the topic ID from a topic identifier in the specified forum. It is used by comment topics, which means that the unique-topic-name assumption holds valid.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"?integer";s:11:"description";s:30:"The topic ID (null: not found)";}}s:21:"make_post_forum_topic";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:16:{i:0;a:5:{s:4:"name";s:10:"forum_name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:14:"The forum name";s:11:"phpdoc_name";s:10:"forum_name";}i:1;a:5:{s:4:"name";s:16:"topic_identifier";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:58:"The topic identifier (usually _)";s:11:"phpdoc_name";s:16:"topic_identifier";}i:2;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}i:3;a:5:{s:4:"name";s:10:"post_title";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:14:"The post title";s:11:"phpdoc_name";s:10:"post_title";}i:4;a:5:{s:4:"name";s:4:"post";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:34:"The post content in Comcode format";s:11:"phpdoc_name";s:4:"post";}i:5;a:5:{s:4:"name";s:13:"content_title";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:77:"The topic title; must be same as content title if this is for a comment topic";s:11:"phpdoc_name";s:13:"content_title";}i:6;a:5:{s:4:"name";s:37:"topic_identifier_encapsulation_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:204:"This is put together with the topic identifier to make a more-human-readable topic title or topic description (hopefully the latter and a $content_title title, but only if the forum supports descriptions)";s:11:"phpdoc_name";s:37:"topic_identifier_encapsulation_prefix";}i:7;a:7:{s:4:"name";s:11:"content_url";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?URLPATH";s:11:"description";s:50:"URL to the content (null: do not make spacer post)";s:11:"phpdoc_name";s:11:"content_url";}i:8;a:7:{s:4:"name";s:4:"time";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:5:"?TIME";s:11:"description";s:38:"The post time (null: use current time)";s:11:"phpdoc_name";s:4:"time";}i:9;a:7:{s:4:"name";s:2:"ip";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:3:"?IP";s:11:"description";s:58:"The post IP address (null: use current members IP address)";s:11:"phpdoc_name";s:2:"ip";}i:10;a:7:{s:4:"name";s:9:"validated";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:146:"Whether the post is validated (null: unknown, find whether it needs to be marked unvalidated initially). This only works with the Conversr driver.";s:11:"phpdoc_name";s:9:"validated";}i:11;a:7:{s:4:"name";s:15:"topic_validated";s:7:"default";i:1;s:11:"default_raw";s:1:"1";s:3:"ref";b:0;s:4:"type";s:7:"?BINARY";s:11:"description";s:147:"Whether the topic is validated (null: unknown, find whether it needs to be marked unvalidated initially). This only works with the Conversr driver.";s:11:"phpdoc_name";s:15:"topic_validated";}i:12;a:7:{s:4:"name";s:16:"skip_post_checks";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether to skip post checks";s:11:"phpdoc_name";s:16:"skip_post_checks";}i:13;a:7:{s:4:"name";s:20:"poster_name_if_guest";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:22:"The name of the poster";s:11:"phpdoc_name";s:20:"poster_name_if_guest";}i:14;a:7:{s:4:"name";s:9:"parent_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:39:"ID of post being replied to (null: N/A)";s:11:"phpdoc_name";s:9:"parent_id";}i:15;a:7:{s:4:"name";s:10:"staff_only";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:42:"Whether the reply is only visible to staff";s:11:"phpdoc_name";s:10:"staff_only";}}s:4:"name";s:21:"make_post_forum_topic";s:11:"description";s:466:"Makes a post in the specified forum, in the specified topic according to the given specifications. If the topic doesn't exist, it is created along with a spacer-post.Spacer posts exist in order to allow staff to delete the first true post in a topic. Without spacers, this would not be possible with most forum systems. They also serve to provide meta information on the topic that cannot be encoded in the title (such as a link to the content being commented upon).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:63:"Topic ID (may be null), and whether a hidden post has been made";}}s:21:"get_forum_topic_posts";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:8:"topic_id";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:12:"The topic ID";s:11:"phpdoc_name";s:8:"topic_id";}i:1;a:5:{s:4:"name";s:5:"count";s:3:"ref";b:1;s:4:"type";s:7:"integer";s:11:"description";s:52:"The comment count will be returned here by reference";s:11:"phpdoc_name";s:5:"count";}i:2;a:7:{s:4:"name";s:3:"max";s:7:"default";i:100;s:11:"default_raw";s:3:"100";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:28:"Maximum comments to returned";s:11:"phpdoc_name";s:3:"max";}i:3;a:7:{s:4:"name";s:5:"start";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:19:"Comment to start at";s:11:"phpdoc_name";s:5:"start";}i:4;a:7:{s:4:"name";s:9:"mark_read";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:62:"Whether to mark the topic read (ignored for this forum driver)";s:11:"phpdoc_name";s:9:"mark_read";}i:5;a:7:{s:4:"name";s:7:"reverse";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:26:"Whether to show in reverse";s:11:"phpdoc_name";s:7:"reverse";}}s:4:"name";s:21:"get_forum_topic_posts";s:11:"description";s:54:"Get an array of maps for the topic in the given forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:106:"The array of maps (Each map is: title, message, member, date) (-1 for no such forum, -2 for no such topic)";}}s:9:"topic_url";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:12:"The topic ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:5:"forum";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"The forum ID";s:11:"phpdoc_name";s:5:"forum";}}s:4:"name";s:9:"topic_url";s:11:"description";s:133:"Get a URL to the specified topic ID. Most forums don't require the second parameter, but some do, so it is required in the interface.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:20:"The URL to the topic";}}s:8:"post_url";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:11:"The post ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:5:"forum";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"The forum ID";s:11:"phpdoc_name";s:5:"forum";}}s:4:"name";s:8:"post_url";s:11:"description";s:35:"Get a URL to the specified post ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:19:"The URL to the post";}}s:17:"show_forum_topics";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:39:"The forum name or an array of forum IDs";s:11:"phpdoc_name";s:4:"name";}i:1;a:5:{s:4:"name";s:5:"limit";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:9:"The limit";s:11:"phpdoc_name";s:5:"limit";}i:2;a:5:{s:4:"name";s:5:"start";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:18:"The start position";s:11:"phpdoc_name";s:5:"start";}i:3;a:5:{s:4:"name";s:8:"max_rows";s:3:"ref";b:1;s:4:"type";s:7:"integer";s:11:"description";s:54:"The total rows (not a parameter: returns by reference)";s:11:"phpdoc_name";s:8:"max_rows";}i:4;a:7:{s:4:"name";s:18:"filter_topic_title";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:22:"The topic title filter";s:11:"phpdoc_name";s:18:"filter_topic_title";}i:5;a:7:{s:4:"name";s:16:"show_first_posts";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:31:"Whether to show the first posts";s:11:"phpdoc_name";s:16:"show_first_posts";}i:6;a:8:{s:4:"name";s:8:"date_key";s:7:"default";s:8:"lasttime";s:11:"default_raw";s:10:"'lasttime'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:23:"The date key to sort by";s:11:"phpdoc_name";s:8:"date_key";s:3:"set";s:18:"lasttime firsttime";}i:7;a:7:{s:4:"name";s:3:"hot";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether to limit to hot topics";s:11:"phpdoc_name";s:3:"hot";}i:8;a:7:{s:4:"name";s:24:"filter_topic_description";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:28:"The topic description filter";s:11:"phpdoc_name";s:24:"filter_topic_description";}}s:4:"name";s:17:"show_forum_topics";s:11:"description";s:405:"Get an array of topics in the given forum. Each topic is an array with the following attributes:- id, the topic ID- title, the topic title- lastusername, the username of the last poster- lasttime, the timestamp of the last reply- closed, a Boolean for whether the topic is currently closed or not- firsttitle, the title of the first post- firstpost, the first post (only set if $show_first_posts was true)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:33:"The array of topics (null: error)";}}s:18:"member_group_query";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:6:"groups";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:23:"The array of usergroups";s:11:"phpdoc_name";s:6:"groups";}i:1;a:7:{s:4:"name";s:3:"max";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:170:"Return up to this many entries for primary members and this many entries for secondary members (null: no limit, only use no limit if querying very restricted usergroups!)";s:11:"phpdoc_name";s:3:"max";}i:2;a:7:{s:4:"name";s:5:"start";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:80:"Return primary members after this offset and secondary members after this offset";s:11:"phpdoc_name";s:5:"start";}}s:4:"name";s:18:"member_group_query";s:11:"description";s:81:"Get an array of members who are in at least one of the given array of usergroups.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:39:"The array of members (null: no members)";}}s:19:"get_previous_member";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:26:"The member ID to decrement";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:19:"get_previous_member";s:11:"description";s:53:"This is the opposite of the get_next_member function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?MEMBER";s:11:"description";s:49:"The previous member ID (null: no previous member)";}}s:15:"get_next_member";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:26:"The member ID to increment";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:15:"get_next_member";s:11:"description";s:146:"Get the member ID of the next member after the given one, or null.It cannot be assumed there are no gaps in member IDs, as members may be deleted.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?MEMBER";s:11:"description";s:41:"The next member ID (null: no next member)";}}s:8:"probe_ip";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"ip";s:3:"ref";b:0;s:4:"type";s:2:"IP";s:11:"description";s:14:"The IP address";s:11:"phpdoc_name";s:2:"ip";}}s:4:"name";s:8:"probe_ip";s:11:"description";s:46:"Try to find a member with the given IP address";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"The distinct rows found";}}s:13:"_get_username";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:13:"_get_username";s:11:"description";s:152:"Get the name relating to the specified member ID.If this returns null, then the member has been deleted. Always take potential null output into account.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:38:"The member name (null: member deleted)";}}s:25:"_get_member_email_address";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:25:"_get_member_email_address";s:11:"description";s:51:"Get the e-mail address for the specified member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:18:"The e-mail address";}}s:24:"get_member_email_allowed";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:24:"get_member_email_allowed";s:11:"description";s:49:"Find if this member may have e-mails sent to them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:48:"Whether the member may have e-mails sent to them";}}s:25:"get_member_join_timestamp";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:25:"get_member_join_timestamp";s:11:"description";s:42:"Get the timestamp of a member's join date.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:4:"TIME";s:11:"description";s:13:"The timestamp";}}s:20:"get_matching_members";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:7:"pattern";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:11:"The pattern";s:11:"phpdoc_name";s:7:"pattern";}i:1;a:7:{s:4:"name";s:5:"limit";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:76:"Maximum number to return (limits to the most recent active) (null: no limit)";s:11:"phpdoc_name";s:5:"limit";}}s:4:"name";s:20:"get_matching_members";s:11:"description";s:64:"Find all members with a name matching the given SQL LIKE string.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:47:"The array of matched members (null: none found)";}}s:14:"get_post_count";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:14:"get_post_count";s:11:"description";s:34:"Get the given member's post count.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:14:"The post count";}}s:15:"get_topic_count";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:15:"get_topic_count";s:11:"description";s:35:"Get the given member's topic count.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"The topic count";}}s:9:"is_banned";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:9:"is_banned";s:11:"description";s:42:"Find out if the given member ID is banned.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:28:"Whether the member is banned";}}s:11:"get_emo_dir";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_emo_dir";s:11:"description";s:35:"Find the base URL to the emoticons.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:12:"The base URL";}}s:14:"find_emoticons";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"find_emoticons";s:11:"description";s:162:"Get a map between emoticon codes and templates representing the HTML-image-code for this emoticon. The emoticons presented of course depend on the forum involved.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:7:"The map";}}s:13:"get_skin_list";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_skin_list";s:11:"description";s:44:"Find a list of all forum skins (aka themes).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"The list of skins";}}s:10:"_get_theme";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:20:"skip_member_specific";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:39:"Whether to avoid member-specific lookup";s:11:"phpdoc_name";s:20:"skip_member_specific";}}s:4:"name";s:10:"_get_theme";s:11:"description";s:395:"Try to find the theme that the logged-in/guest member is using, and map it to a Composr theme.The themes/map.ini file functions to provide this mapping between forum themes, and Composr themes, and has a slightly different meaning for different forum drivers. For example, some drivers map the forum themes theme directory to the Composr theme name, while others made the humanly readeable name.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:9:"The theme";}}s:9:"_is_staff";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:9:"_is_staff";s:11:"description";s:58:"Find if the specified member ID is marked as staff or not.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:27:"Whether the member is staff";}}s:15:"_is_super_admin";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:15:"_is_super_admin";s:11:"description";s:66:"Find if the specified member ID is marked as a super admin or not.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:35:"Whether the member is a super admin";}}s:20:"get_num_users_forums";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"get_num_users_forums";s:11:"description";s:57:"Get the number of members currently online on the forums.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:21:"The number of members";}}s:11:"get_members";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_members";s:11:"description";s:50:"Get the number of members registered on the forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:21:"The number of members";}}s:10:"get_topics";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"get_topics";s:11:"description";s:44:"Get the total topics ever made on the forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:20:"The number of topics";}}s:19:"get_num_forum_posts";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"get_num_forum_posts";s:11:"description";s:43:"Get the total posts ever made on the forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:19:"The number of posts";}}s:24:"_get_num_new_forum_posts";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"_get_num_new_forum_posts";s:11:"description";s:34:"Get the number of new forum posts.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:19:"The number of posts";}}s:24:"get_member_from_username";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:15:"The member name";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:24:"get_member_from_username";s:11:"description";s:49:"Get a member ID from the given member's username.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";}}s:23:"_get_super_admin_groups";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"_get_super_admin_groups";s:11:"description";s:36:"Get the IDs of the admin usergroups.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"The admin usergroup IDs";}}s:21:"_get_moderator_groups";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"_get_moderator_groups";s:11:"description";s:211:"Get the IDs of the moderator usergroups.It should not be assumed that a member only has one usergroup - this depends upon the forum the driver works for. It also does not take the staff site filter into account.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:27:"The moderator usergroup IDs";}}s:19:"_get_usergroup_list";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"_get_usergroup_list";s:11:"description";s:29:"Get the forum usergroup list.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:18:"The usergroup list";}}s:19:"_get_members_groups";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:19:"_get_members_groups";s:11:"description";s:60:"Get the forum usergroup relating to the specified member ID.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:29:"The array of forum usergroups";}}s:19:"forum_create_cookie";a:5:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:27:"The username (null: lookup)";s:11:"phpdoc_name";s:4:"name";}i:2;a:5:{s:4:"name";s:8:"password";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:12:"The password";s:11:"phpdoc_name";s:8:"password";}}s:4:"name";s:19:"forum_create_cookie";s:11:"description";s:29:"Create a member login cookie.";s:5:"flags";a:0:{}}s:21:"forum_authorise_login";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:8:"username";s:3:"ref";b:0;s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:104:"The member username (null: don't use this in the authentication - but look it up using the ID if needed)";s:11:"phpdoc_name";s:8:"username";}i:1;a:5:{s:4:"name";s:6:"userid";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"userid";}i:2;a:5:{s:4:"name";s:15:"password_hashed";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:23:"The md5-hashed password";s:11:"phpdoc_name";s:15:"password_hashed";}i:3;a:5:{s:4:"name";s:12:"password_raw";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:16:"The raw password";s:11:"phpdoc_name";s:12:"password_raw";}i:4;a:7:{s:4:"name";s:12:"cookie_login";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether this is a cookie login";s:11:"phpdoc_name";s:12:"cookie_login";}}s:4:"name";s:21:"forum_authorise_login";s:11:"description";s:294:"Find if the given member ID and password is valid. If username is null, then the member ID is used instead.All authorisation, cookies, and form-logins, are passed through this function.Some forums do cookie logins differently, so a Boolean is passed in to indicate whether it is a cookie login.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:80:"A map of 'id' and 'error'. If 'id' is null, an error occurred and 'error' is set";}}s:13:"get_member_ip";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:13:"get_member_ip";s:11:"description";s:49:"Get a first known IP address of the given member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:2:"IP";s:11:"description";s:14:"The IP address";}}s:14:"get_member_row";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}}s:4:"name";s:14:"get_member_row";s:11:"description";s:42:"Gets a whole member row from the database.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:37:"The member row (null: no such member)";}}s:20:"get_member_row_field";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:6:"member";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:13:"The member ID";s:11:"phpdoc_name";s:6:"member";}i:1;a:5:{s:4:"name";s:5:"field";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:20:"The field identifier";s:11:"phpdoc_name";s:5:"field";}}s:4:"name";s:20:"get_member_row_field";s:11:"description";s:53:"Gets a named field of a member row from the database.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:9:"The field";}}s:18:"_date_to_timestamp";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"date";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The wowbb date";s:11:"phpdoc_name";s:4:"date";}}s:4:"name";s:18:"_date_to_timestamp";s:11:"description";s:36:"Convert a wowbb date to a timestamp.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:4:"TIME";s:11:"description";s:13:"The timestamp";}}s:18:"_timestamp_to_date";a:6:{s:8:"filename";s:23:"sources/forum/wowbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"timestamp";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:13:"The timestamp";s:11:"phpdoc_name";s:9:"timestamp";}}s:4:"name";s:18:"_timestamp_to_date";s:11:"description";s:36:"Convert a timestamp to a wowbb date.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:14:"The wowbb date";}}}s:4:"name";s:18:"Forum_driver_wowbb";s:7:"comment";b:1;}s:17:"Forum_driver_base";a:3:{s:9:"functions";a:22:{s:27:"install_delete_custom_field";a:5:{s:8:"filename";s:22:"sources/forum_stub.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:32:"The name of the new custom field";s:11:"phpdoc_name";s:4:"name";}}s:4:"name";s:27:"install_delete_custom_field";s:11:"description";s:145:"Add the specified custom field to the forum (some forums implemented this using proper custom profile fields, others through adding a new field).";s:5:"flags";a:0:{}}s:15:"get_guest_group";a:6:{s:8:"filename";s:22:"sources/forum_stub.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_guest_group";s:11:"description";s:48:"Find the usergroup ID of the forum guest member.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"GROUP";s:11:"description";s:42:"The usergroup ID of the forum guest member";}}s:18:"member_profile_url";a:6:{s:8:"filename";s:22:"sources/forum_stub.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:16:"The forum member";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:18:"definitely_profile";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:116:"Whether to be insistent that we go to the profile, rather than possibly starting an IM which can link to the profile";s:11:"phpdoc_name";s:18:"definitely_profile";}i:2;a:7:{s:4:"name";s:13:"tempcode_okay";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:147:"Whether it is okay to return the result using Tempcode (more efficient, and allows keep_* parameters to propagate which you almost certainly want!)";s:11:"phpdoc_name";s:13:"tempcode_okay";}}s:4:"name";s:18:"member_profile_url";s:11:"description";s:45:"Get a URL to a forum member's member profile.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:7:"The URL";}}s:24:"member_profile_hyperlink";a:6:{s:8:"filename";s:22:"sources/forum_stub.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:16:"The forum member";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:18:"definitely_profile";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:116:"Whether to be insistent that we go to the profile, rather than possibly starting an IM which can link to the profile";s:11:"phpdoc_name";s:18:"definitely_profile";}i:2;a:7:{s:4:"name";s:9:"_username";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:32:"The username (blank: look it up)";s:11:"phpdoc_name";s:9:"_username";}i:3;a:7:{s:4:"name";s:15:"use_displayname";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to use the displayname rather than the username (if we have them)";s:11:"phpdoc_name";s:15:"use_displayname";}}s:4:"name";s:24:"member_profile_hyperlink";s:11:"description";s:84:"Get a hyperlink (i.e. HTML link, not just a URL) to a forum member's member profile.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:13:"The hyperlink";}}s:8:"join_url";a:6:{s:8:"filename";s:22:"sources/forum_stub.php";s:10:"parameters";a:0:{}s:4:"name";s:8:"join_url";s:11:"description";s:31:"Get a URL to a forum join page.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:7:"The URL";}}s:16:"users_online_url";a:6:{s:8:"filename";s:22:"sources/forum_stub.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:13:"tempcode_okay";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:71:"Whether it is okay to return the result using Tempcode (more efficient)";s:11:"phpdoc_name";s:13:"tempcode_okay";}}s:4:"name";s:16:"users_online_url";s:11:"description";s:40:"Get a URL to a forum 'user online' list.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:7:"The URL";}}s:13:"member_pm_url";a:6:{s:8:"filename";s:22:"sources/forum_stub.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:16:"The forum member";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:13:"tempcode_okay";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:71:"Whether it is okay to return the result using Tempcode (more efficient)";s:11:"phpdoc_name";s:13:"tempcode_okay";}}s:4:"name";s:13:"member_pm_url";s:11:"description";s:38:"Get a URL to send a forum member a PM.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:7:"The URL";}}s:9:"forum_url";a:6:{s:8:"filename";s:22:"sources/forum_stub.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:19:"The ID of the forum";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:13:"tempcode_okay";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:71:"Whether it is okay to return the result using Tempcode (more efficient)";s:11:"phpdoc_name";s:13:"tempcode_okay";}}s:4:"name";s:9:"forum_url";s:11:"description";s:21:"Get a URL to a forum.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:7:"The URL";}}s:12:"get_username";a:6:{s:8:"filename";s:22:"sources/forum_stub.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:10:"The member";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:15:"use_displayname";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to use the displayname rather than the username (if we have them)";s:11:"phpdoc_name";s:15:"use_displayname";}}s:4:"name";s:12:"get_username";s:11:"description";s:24:"Get a member's username.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:11:"?SHORT_TEXT";s:11:"description";s:35:"The username (null: deleted member)";}}s:15:"get_displayname";a:6:{s:8:"filename";s:22:"sources/forum_stub.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"username";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"The username";s:11:"phpdoc_name";s:8:"username";}}s:4:"name";s:15:"get_displayname";s:11:"description";s:117:"Get the display name of a username.If no display name generator is configured, this will be the same as the username.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:16:"The display name";}}s:24:"get_member_email_address";a:6:{s:8:"filename";s:22:"sources/forum_stub.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:10:"The member";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:24:"get_member_email_address";s:11:"description";s:30:"Get a member's e-mail address.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:37:"The e-mail address (blank: not known)";}}s:8:"is_staff";a:6:{s:8:"filename";s:22:"sources/forum_stub.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:10:"The member";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:17:"skip_staff_filter";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:65:"Whether to avoid checking the staff filter (i.e. ignore M.S.N.'s)";s:11:"phpdoc_name";s:17:"skip_staff_filter";}}s:4:"name";s:8:"is_staff";s:11:"description";s:31:"Find whether a member is staff.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:10:"The answer";}}s:20:"disable_staff_filter";a:6:{s:8:"filename";s:22:"sources/forum_stub.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"disable_staff_filter";s:11:"description";s:208:"If we can't get a list of admins via a usergroup query, we have to disable the staff filter - else the staff filtering can cause disaster at the point of being turned on (because it can't automatically sync).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:36:"Whether the staff filter is disabled";}}s:14:"is_super_admin";a:6:{s:8:"filename";s:22:"sources/forum_stub.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:10:"The member";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:14:"is_super_admin";s:11:"description";s:47:"Find whether a member is a super administrator.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:10:"The answer";}}s:22:"get_super_admin_groups";a:6:{s:8:"filename";s:22:"sources/forum_stub.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"get_super_admin_groups";s:11:"description";s:41:"Get a list of the super admin usergroups.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"The list of usergroups";}}s:20:"get_moderator_groups";a:6:{s:8:"filename";s:22:"sources/forum_stub.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"get_moderator_groups";s:11:"description";s:39:"Get a list of the moderator usergroups.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"The list of usergroups";}}s:18:"get_usergroup_list";a:6:{s:8:"filename";s:22:"sources/forum_stub.php";s:10:"parameters";a:6:{i:0;a:7:{s:4:"name";s:11:"hide_hidden";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:48:"Whether to obscure the name of hidden usergroups";s:11:"phpdoc_name";s:11:"hide_hidden";}i:1;a:7:{s:4:"name";s:15:"only_permissive";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:42:"Whether to only grab permissive usergroups";s:11:"phpdoc_name";s:15:"only_permissive";}i:2;a:7:{s:4:"name";s:14:"force_show_all";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:64:"Do not limit things even if there are huge numbers of usergroups";s:11:"phpdoc_name";s:14:"force_show_all";}i:3;a:7:{s:4:"name";s:10:"force_find";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:6:"?array";s:11:"description";s:73:"Usergroups that must be included in the results (null: no extras must be)";s:11:"phpdoc_name";s:10:"force_find";}i:4;a:7:{s:4:"name";s:10:"for_member";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:62:"Always return usergroups of this member (null: current member)";s:11:"phpdoc_name";s:10:"for_member";}i:5;a:7:{s:4:"name";s:11:"skip_hidden";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:44:"Whether to completely skip hidden usergroups";s:11:"phpdoc_name";s:11:"skip_hidden";}}s:4:"name";s:18:"get_usergroup_list";s:11:"description";s:41:"Get a map of forum usergroups (id=>name).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:7:"The map";}}s:18:"get_members_groups";a:6:{s:8:"filename";s:22:"sources/forum_stub.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:10:"The member";s:11:"phpdoc_name";s:2:"id";}i:1;a:7:{s:4:"name";s:11:"skip_secret";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:45:"Whether to skip looking at secret usergroups.";s:11:"phpdoc_name";s:11:"skip_secret";}i:2;a:7:{s:4:"name";s:16:"handle_probation";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:38:"Whether to take probation into account";s:11:"phpdoc_name";s:16:"handle_probation";}}s:4:"name";s:18:"get_members_groups";s:11:"description";s:40:"Get a list of usergroups a member is in.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:22:"The list of usergroups";}}s:9:"get_theme";a:6:{s:8:"filename";s:22:"sources/forum_stub.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:8:"zone_for";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:58:"The zone we are getting the theme for (null: current zone)";s:11:"phpdoc_name";s:8:"zone_for";}}s:4:"name";s:9:"get_theme";s:11:"description";s:42:"Get the current member's theme identifier.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:20:"The theme identifier";}}s:23:"get_num_new_forum_posts";a:6:{s:8:"filename";s:22:"sources/forum_stub.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"get_num_new_forum_posts";s:11:"description";s:69:"Get the number of new forum posts on the system in the last 24 hours.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:21:"Number of forum posts";}}s:17:"topic_is_threaded";a:6:{s:8:"filename";s:22:"sources/forum_stub.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"topic_id";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:12:"The topic ID";s:11:"phpdoc_name";s:8:"topic_id";}}s:4:"name";s:17:"topic_is_threaded";s:11:"description";s:33:"Find whether a forum is threaded.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:13:"Whether it is";}}s:26:"get_post_remaining_details";a:6:{s:8:"filename";s:22:"sources/forum_stub.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:8:"topic_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:25:"Topic the posts come from";s:11:"phpdoc_name";s:8:"topic_id";}i:1;a:5:{s:4:"name";s:8:"post_ids";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:16:"List of post IDs";s:11:"phpdoc_name";s:8:"post_ids";}}s:4:"name";s:26:"get_post_remaining_details";s:11:"description";s:184:"Load extra details for a list of posts. Does not need to return anything if forum driver doesn't support partial post loading (which is only useful for threaded topic partial-display).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"Extra details";}}}s:4:"name";s:17:"Forum_driver_base";s:7:"comment";b:1;}s:36:"Hook_main_custom_gfx_rollover_button";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:56:"sources/hooks/blocks/main_custom_gfx/rollover_button.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:59:"Map of hook parameters (relayed from block parameters map).";s:11:"phpdoc_name";s:3:"map";}i:1;a:5:{s:4:"name";s:5:"block";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:44:"The block itself (contains utility methods).";s:11:"phpdoc_name";s:5:"block";}}s:4:"name";s:3:"run";s:11:"description";s:77:"Standard graphic generator function. Creates custom graphics from parameters.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"HTML to output.";}}}s:4:"name";s:36:"Hook_main_custom_gfx_rollover_button";s:7:"comment";b:1;}s:33:"Hook_main_custom_gfx_text_overlay";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:53:"sources/hooks/blocks/main_custom_gfx/text_overlay.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:3:"map";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:59:"Map of hook parameters (relayed from block parameters map).";s:11:"phpdoc_name";s:3:"map";}i:1;a:5:{s:4:"name";s:5:"block";s:3:"ref";b:1;s:4:"type";s:6:"object";s:11:"description";s:44:"The block itself (contains utility methods).";s:11:"phpdoc_name";s:5:"block";}}s:4:"name";s:3:"run";s:11:"description";s:77:"Standard graphic generator function. Creates custom graphics from parameters.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"HTML to output.";}}}s:4:"name";s:33:"Hook_main_custom_gfx_text_overlay";s:7:"comment";b:1;}s:14:"Hook_notes_msn";a:3:{s:9:"functions";a:1:{s:3:"run";a:5:{s:8:"filename";s:39:"sources/hooks/blocks/main_notes/msn.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"file";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:9:"Filename.";s:11:"phpdoc_name";s:4:"file";}}s:4:"name";s:3:"run";s:11:"description";s:95:"Decaching trigger for main_notes saves. See if we have to decache based on the passed filename.";s:5:"flags";a:0:{}}}s:4:"name";s:14:"Hook_notes_msn";s:7:"comment";b:1;}s:17:"Hook_notes_quotes";a:3:{s:9:"functions";a:1:{s:3:"run";a:5:{s:8:"filename";s:42:"sources/hooks/blocks/main_notes/quotes.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"file";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:9:"Filename.";s:11:"phpdoc_name";s:4:"file";}}s:4:"name";s:3:"run";s:11:"description";s:95:"Decaching trigger for main_notes saves. See if we have to decache based on the passed filename.";s:5:"flags";a:0:{}}}s:4:"name";s:17:"Hook_notes_quotes";s:7:"comment";b:1;}s:21:"Hook_checklist_awards";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:52:"sources/hooks/blocks/main_staff_checklist/awards.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:45:"Find items to include on the staff checklist.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:251:"An array of tuples: The task row to show, the number of seconds until it is due (or null if not on a timer), the number of things to sort out (or null if not on a queue), The name of the config option that controls the schedule (or null if no option).";}}}s:4:"name";s:21:"Hook_checklist_awards";s:7:"comment";b:1;}s:21:"Hook_checklist_backup";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:52:"sources/hooks/blocks/main_staff_checklist/backup.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:45:"Find items to include on the staff checklist.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:251:"An array of tuples: The task row to show, the number of seconds until it is due (or null if not on a timer), the number of things to sort out (or null if not on a queue), The name of the config option that controls the schedule (or null if no option).";}}}s:4:"name";s:21:"Hook_checklist_backup";s:7:"comment";b:1;}s:19:"Hook_checklist_blog";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:50:"sources/hooks/blocks/main_staff_checklist/blog.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:45:"Find items to include on the staff checklist.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:251:"An array of tuples: The task row to show, the number of seconds until it is due (or null if not on a timer), the number of things to sort out (or null if not on a queue), The name of the config option that controls the schedule (or null if no option).";}}}s:4:"name";s:19:"Hook_checklist_blog";s:7:"comment";b:1;}s:30:"Hook_checklist_content_reviews";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:61:"sources/hooks/blocks/main_staff_checklist/content_reviews.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:45:"Find items to include on the staff checklist.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:251:"An array of tuples: The task row to show, the number of seconds until it is due (or null if not on a timer), the number of things to sort out (or null if not on a queue), The name of the config option that controls the schedule (or null if no option).";}}}s:4:"name";s:30:"Hook_checklist_content_reviews";s:7:"comment";b:1;}s:24:"Hook_checklist_copyright";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:55:"sources/hooks/blocks/main_staff_checklist/copyright.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:45:"Find items to include on the staff checklist.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:251:"An array of tuples: The task row to show, the number of seconds until it is due (or null if not on a timer), the number of things to sort out (or null if not on a queue), The name of the config option that controls the schedule (or null if no option).";}}}s:4:"name";s:24:"Hook_checklist_copyright";s:7:"comment";b:1;}s:19:"Hook_checklist_cron";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:50:"sources/hooks/blocks/main_staff_checklist/cron.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:45:"Find items to include on the staff checklist.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:251:"An array of tuples: The task row to show, the number of seconds until it is due (or null if not on a timer), the number of things to sort out (or null if not on a queue), The name of the config option that controls the schedule (or null if no option).";}}}s:4:"name";s:19:"Hook_checklist_cron";s:7:"comment";b:1;}s:31:"Hook_checklist_ecommerce_orders";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:62:"sources/hooks/blocks/main_staff_checklist/ecommerce_orders.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:45:"Find items to include on the staff checklist.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:251:"An array of tuples: The task row to show, the number of seconds until it is due (or null if not on a timer), the number of things to sort out (or null if not on a queue), The name of the config option that controls the schedule (or null if no option).";}}}s:4:"name";s:31:"Hook_checklist_ecommerce_orders";s:7:"comment";b:1;}s:20:"Hook_checklist_forum";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:51:"sources/hooks/blocks/main_staff_checklist/forum.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:45:"Find items to include on the staff checklist.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:251:"An array of tuples: The task row to show, the number of seconds until it is due (or null if not on a timer), the number of things to sort out (or null if not on a queue), The name of the config option that controls the schedule (or null if no option).";}}}s:4:"name";s:20:"Hook_checklist_forum";s:7:"comment";b:1;}s:24:"Hook_checklist_messaging";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:55:"sources/hooks/blocks/main_staff_checklist/messaging.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:45:"Find items to include on the staff checklist.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:251:"An array of tuples: The task row to show, the number of seconds until it is due (or null if not on a timer), the number of things to sort out (or null if not on a queue), The name of the config option that controls the schedule (or null if no option).";}}}s:4:"name";s:24:"Hook_checklist_messaging";s:7:"comment";b:1;}s:19:"Hook_checklist_news";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:50:"sources/hooks/blocks/main_staff_checklist/news.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:45:"Find items to include on the staff checklist.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:251:"An array of tuples: The task row to show, the number of seconds until it is due (or null if not on a timer), the number of things to sort out (or null if not on a queue), The name of the config option that controls the schedule (or null if no option).";}}}s:4:"name";s:19:"Hook_checklist_news";s:7:"comment";b:1;}s:25:"Hook_checklist_newsletter";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:56:"sources/hooks/blocks/main_staff_checklist/newsletter.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:45:"Find items to include on the staff checklist.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:251:"An array of tuples: The task row to show, the number of seconds until it is due (or null if not on a timer), the number of things to sort out (or null if not on a queue), The name of the config option that controls the schedule (or null if no option).";}}}s:4:"name";s:25:"Hook_checklist_newsletter";s:7:"comment";b:1;}s:24:"Hook_checklist_open_site";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:55:"sources/hooks/blocks/main_staff_checklist/open_site.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:45:"Find items to include on the staff checklist.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:251:"An array of tuples: The task row to show, the number of seconds until it is due (or null if not on a timer), the number of things to sort out (or null if not on a queue), The name of the config option that controls the schedule (or null if no option).";}}}s:4:"name";s:24:"Hook_checklist_open_site";s:7:"comment";b:1;}s:21:"Hook_checklist_points";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:52:"sources/hooks/blocks/main_staff_checklist/points.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:45:"Find items to include on the staff checklist.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:251:"An array of tuples: The task row to show, the number of seconds until it is due (or null if not on a timer), the number of things to sort out (or null if not on a queue), The name of the config option that controls the schedule (or null if no option).";}}}s:4:"name";s:21:"Hook_checklist_points";s:7:"comment";b:1;}s:25:"Hook_checklist_pointstore";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:56:"sources/hooks/blocks/main_staff_checklist/pointstore.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:45:"Find items to include on the staff checklist.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:251:"An array of tuples: The task row to show, the number of seconds until it is due (or null if not on a timer), the number of things to sort out (or null if not on a queue), The name of the config option that controls the schedule (or null if no option).";}}}s:4:"name";s:25:"Hook_checklist_pointstore";s:7:"comment";b:1;}s:20:"Hook_checklist_polls";a:3:{s:9:"functions";a:2:{s:3:"run";a:6:{s:8:"filename";s:51:"sources/hooks/blocks/main_staff_checklist/polls.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:45:"Find items to include on the staff checklist.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:251:"An array of tuples: The task row to show, the number of seconds until it is due (or null if not on a timer), the number of things to sort out (or null if not on a queue), The name of the config option that controls the schedule (or null if no option).";}}s:18:"get_num_poll_queue";a:6:{s:8:"filename";s:51:"sources/hooks/blocks/main_staff_checklist/polls.php";s:10:"parameters";a:0:{}s:4:"name";s:18:"get_num_poll_queue";s:11:"description";s:37:"Get the number of polls in the queue.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:15:"Number in queue";}}}s:4:"name";s:20:"Hook_checklist_polls";s:7:"comment";b:1;}s:22:"Hook_checklist_profile";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:53:"sources/hooks/blocks/main_staff_checklist/profile.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:45:"Find items to include on the staff checklist.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:251:"An array of tuples: The task row to show, the number of seconds until it is due (or null if not on a timer), the number of things to sort out (or null if not on a queue), The name of the config option that controls the schedule (or null if no option).";}}}s:4:"name";s:22:"Hook_checklist_profile";s:7:"comment";b:1;}s:29:"Hook_checklist_reported_posts";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:60:"sources/hooks/blocks/main_staff_checklist/reported_posts.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:45:"Find items to include on the staff checklist.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:251:"An array of tuples: The task row to show, the number of seconds until it is due (or null if not on a timer), the number of things to sort out (or null if not on a queue), The name of the config option that controls the schedule (or null if no option).";}}}s:4:"name";s:29:"Hook_checklist_reported_posts";s:7:"comment";b:1;}s:22:"Hook_checklist_tickets";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:53:"sources/hooks/blocks/main_staff_checklist/tickets.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:45:"Find items to include on the staff checklist.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:251:"An array of tuples: The task row to show, the number of seconds until it is due (or null if not on a timer), the number of things to sort out (or null if not on a queue), The name of the config option that controls the schedule (or null if no option).";}}}s:4:"name";s:22:"Hook_checklist_tickets";s:7:"comment";b:1;}s:27:"Hook_checklist_translations";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:58:"sources/hooks/blocks/main_staff_checklist/translations.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:45:"Find items to include on the staff checklist.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:251:"An array of tuples: The task row to show, the number of seconds until it is due (or null if not on a timer), the number of things to sort out (or null if not on a queue), The name of the config option that controls the schedule (or null if no option).";}}}s:4:"name";s:27:"Hook_checklist_translations";s:7:"comment";b:1;}s:26:"Hook_checklist_unvalidated";a:3:{s:9:"functions";a:2:{s:3:"run";a:6:{s:8:"filename";s:57:"sources/hooks/blocks/main_staff_checklist/unvalidated.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:45:"Find items to include on the staff checklist.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:251:"An array of tuples: The task row to show, the number of seconds until it is due (or null if not on a timer), the number of things to sort out (or null if not on a queue), The name of the config option that controls the schedule (or null if no option).";}}s:19:"get_num_unvalidated";a:6:{s:8:"filename";s:57:"sources/hooks/blocks/main_staff_checklist/unvalidated.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"get_num_unvalidated";s:11:"description";s:36:"Get the number of unvalidated items.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:54:"A pair: Number of major things, number of minor things";}}}s:4:"name";s:26:"Hook_checklist_unvalidated";s:7:"comment";b:1;}s:35:"Hook_checklist_usergroup_membership";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:66:"sources/hooks/blocks/main_staff_checklist/usergroup_membership.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:45:"Find items to include on the staff checklist.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:251:"An array of tuples: The task row to show, the number of seconds until it is due (or null if not on a timer), the number of things to sort out (or null if not on a queue), The name of the config option that controls the schedule (or null if no option).";}}}s:4:"name";s:35:"Hook_checklist_usergroup_membership";s:7:"comment";b:1;}s:22:"Hook_checklist_version";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:53:"sources/hooks/blocks/main_staff_checklist/version.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:45:"Find items to include on the staff checklist.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:251:"An array of tuples: The task row to show, the number of seconds until it is due (or null if not on a timer), the number of things to sort out (or null if not on a queue), The name of the config option that controls the schedule (or null if no option).";}}}s:4:"name";s:22:"Hook_checklist_version";s:7:"comment";b:1;}s:19:"Hook_checklist_wiki";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:50:"sources/hooks/blocks/main_staff_checklist/wiki.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:45:"Find items to include on the staff checklist.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:251:"An array of tuples: The task row to show, the number of seconds until it is due (or null if not on a timer), the number of things to sort out (or null if not on a queue), The name of the config option that controls the schedule (or null if no option).";}}}s:4:"name";s:19:"Hook_checklist_wiki";s:7:"comment";b:1;}s:19:"Hook_stats_calendar";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:50:"sources/hooks/blocks/side_stats/stats_calendar.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:21:"Show a stats section.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:19:"Hook_stats_calendar";s:7:"comment";b:1;}s:15:"Hook_stats_chat";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:46:"sources/hooks/blocks/side_stats/stats_chat.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:21:"Show a stats section.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:15:"Hook_stats_chat";s:7:"comment";b:1;}s:20:"Hook_stats_downloads";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:51:"sources/hooks/blocks/side_stats/stats_downloads.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:21:"Show a stats section.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:20:"Hook_stats_downloads";s:7:"comment";b:1;}s:19:"Hook_stats_filedump";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:50:"sources/hooks/blocks/side_stats/stats_filedump.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:21:"Show a stats section.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:19:"Hook_stats_filedump";s:7:"comment";b:1;}s:16:"Hook_stats_forum";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:47:"sources/hooks/blocks/side_stats/stats_forum.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:21:"Show a stats section.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:16:"Hook_stats_forum";s:7:"comment";b:1;}s:20:"Hook_stats_galleries";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:51:"sources/hooks/blocks/side_stats/stats_galleries.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:21:"Show a stats section.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:20:"Hook_stats_galleries";s:7:"comment";b:1;}s:15:"Hook_stats_news";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:46:"sources/hooks/blocks/side_stats/stats_news.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:21:"Show a stats section.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:15:"Hook_stats_news";s:7:"comment";b:1;}s:15:"Hook_stats_quiz";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:46:"sources/hooks/blocks/side_stats/stats_quiz.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:21:"Show a stats section.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:15:"Hook_stats_quiz";s:7:"comment";b:1;}s:15:"Hook_stats_wiki";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:46:"sources/hooks/blocks/side_stats/stats_wiki.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:21:"Show a stats section.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:24:"The result of execution.";}}}s:4:"name";s:15:"Hook_stats_wiki";s:7:"comment";b:1;}s:8:"Hook_aef";a:3:{s:9:"functions";a:25:{s:4:"info";a:6:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/aef.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Standard importer hook info function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:165:"Importer handling details, including lists of all the import types covered (import types are not necessarily the same as actual tables) (null: importer is disabled).";}}s:15:"probe_db_access";a:6:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/aef.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The probe path";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:15:"probe_db_access";s:11:"description";s:40:"Probe a file path for DB access details.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:66:"A quartet of the details (db_name, db_user, db_pass, table_prefix)";}}s:13:"import_config";a:5:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/aef.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:13:"import_config";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:17:"import_cns_groups";a:5:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/aef.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:17:"import_cns_groups";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:18:"import_cns_members";a:5:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/aef.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:18:"import_cns_members";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:14:"import_authors";a:5:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/aef.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:12:"old_base_dir";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:12:"old_base_dir";}}s:4:"name";s:14:"import_authors";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:26:"import_news_and_categories";a:5:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/aef.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:12:"old_base_dir";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:12:"old_base_dir";}}s:4:"name";s:26:"import_news_and_categories";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:23:"import_cns_member_files";a:5:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/aef.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:23:"import_cns_member_files";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:14:"import_ip_bans";a:5:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/aef.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:14:"import_ip_bans";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:26:"import_cns_forum_groupings";a:5:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/aef.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:12:"old_base_dir";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:12:"old_base_dir";}}s:4:"name";s:26:"import_cns_forum_groupings";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:17:"import_cns_forums";a:5:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/aef.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:12:"old_base_dir";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:12:"old_base_dir";}}s:4:"name";s:17:"import_cns_forums";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:17:"import_cns_topics";a:5:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/aef.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:17:"import_cns_topics";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:16:"import_cns_posts";a:5:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/aef.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:16:"import_cns_posts";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:25:"_fix_links_callback_topic";a:6:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/aef.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"m";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:9:"The match";s:11:"phpdoc_name";s:1:"m";}}s:4:"name";s:25:"_fix_links_callback_topic";s:11:"description";s:38:"Substitution callback for 'fix_links'.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:23:"The substitution string";}}s:24:"_fix_links_callback_post";a:6:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/aef.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"m";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:9:"The match";s:11:"phpdoc_name";s:1:"m";}}s:4:"name";s:24:"_fix_links_callback_post";s:11:"description";s:38:"Substitution callback for 'fix_links'.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:23:"The substitution string";}}s:25:"_fix_links_callback_forum";a:6:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/aef.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"m";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:9:"The match";s:11:"phpdoc_name";s:1:"m";}}s:4:"name";s:25:"_fix_links_callback_forum";s:11:"description";s:38:"Substitution callback for 'fix_links'.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:23:"The substitution string";}}s:26:"_fix_links_callback_member";a:6:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/aef.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"m";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:9:"The match";s:11:"phpdoc_name";s:1:"m";}}s:4:"name";s:26:"_fix_links_callback_member";s:11:"description";s:38:"Substitution callback for 'fix_links'.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:23:"The substitution string";}}s:9:"fix_links";a:6:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/aef.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:4:"post";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:33:"The text field text (e.g. a post)";s:11:"phpdoc_name";s:4:"post";}i:1;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:2;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:3;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:9:"fix_links";s:11:"description";s:57:"Convert AEF URLs pasted in text fields into Composr ones.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:23:"The new text field text";}}s:12:"data_to_disk";a:6:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/aef.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file data";s:11:"phpdoc_name";s:4:"data";}i:1;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:20:"The optimal filename";s:11:"phpdoc_name";s:8:"filename";}i:2;a:5:{s:4:"name";s:8:"sections";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:33:"The upload type (e.g. cns_photos)";s:11:"phpdoc_name";s:8:"sections";}i:3;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:12:"data_to_disk";s:11:"description";s:72:"Convert a AEF database file to a Composr uploaded file (stored on disk).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:28:"Pair: The URL, the thumb url";}}s:21:"import_cns_post_files";a:5:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/aef.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:21:"import_cns_post_files";s:11:"description";s:139:"Standard import function. Note that this is designed for a very popular phpBB mod, and will exit silently if the mod hasn't been installed.";s:5:"flags";a:0:{}}s:26:"import_cns_polls_and_votes";a:5:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/aef.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:26:"import_cns_polls_and_votes";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:25:"import_cns_private_topics";a:5:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/aef.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:12:"old_base_dir";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:12:"old_base_dir";}}s:4:"name";s:25:"import_cns_private_topics";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:22:"convert_topic_emoticon";a:6:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/aef.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"iconid";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:7:"VB code";s:11:"phpdoc_name";s:6:"iconid";}}s:4:"name";s:22:"convert_topic_emoticon";s:11:"description";s:71:"Convert a AEF topic icon code into a standard Composr theme image code.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"Composr code";}}s:20:"import_notifications";a:5:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/aef.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:20:"import_notifications";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:17:"import_wordfilter";a:5:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/aef.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:17:"import_wordfilter";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}}s:4:"name";s:8:"Hook_aef";s:7:"comment";b:1;}s:15:"Hook_catalogues";a:3:{s:9:"functions";a:1:{s:4:"info";a:6:{s:8:"filename";s:49:"sources/hooks/modules/admin_import/catalogues.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Standard importer hook info function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:55:"Importer handling details (null: importer is disabled).";}}}s:4:"name";s:15:"Hook_catalogues";s:7:"comment";b:1;}s:14:"Hook_cms_merge";a:3:{s:9:"functions";a:69:{s:4:"info";a:6:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Standard importer hook info function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:165:"Importer handling details, including lists of all the import types covered (import types are not necessarily the same as actual tables) (null: importer is disabled).";}}s:16:"pre_import_tests";a:6:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:16:"pre_import_tests";s:11:"description";s:62:"Do some tests, to make sure we're happy to continue importing.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:41:"Error/warning UI (null: no error/warning)";}}s:11:"on_same_msn";a:6:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:29:"The path to the imported site";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:11:"on_same_msn";s:11:"description";s:75:"See if the importing site is on the same M.S.N. as the site being imported.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:6:"Answer";}}s:15:"get_lang_string";a:6:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:13:"The string ID";s:11:"phpdoc_name";s:2:"id";}}s:4:"name";s:15:"get_lang_string";s:11:"description";s:37:"Fetch and clean up a language string.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:21:"The cleaned-up string";}}s:25:"import_cns_welcome_emails";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:25:"import_cns_welcome_emails";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:16:"import_bookmarks";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:16:"import_bookmarks";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:14:"import_quizzes";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:14:"import_quizzes";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:16:"import_ecommerce";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:16:"import_ecommerce";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:18:"import_attachments";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:18:"import_attachments";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:28:"import_attachment_references";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:28:"import_attachment_references";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:15:"import_feedback";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:15:"import_feedback";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:14:"import_authors";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:14:"import_authors";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:14:"import_banners";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:14:"import_banners";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:31:"import_points_gifts_and_charges";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:31:"import_points_gifts_and_charges";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:13:"import_config";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:13:"import_config";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:12:"import_polls";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:12:"import_polls";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:26:"import_news_and_categories";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:26:"import_news_and_categories";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:31:"import_newsletter_subscriptions";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:31:"import_newsletter_subscriptions";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:17:"import_pointstore";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:17:"import_pointstore";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:31:"import_downloads_and_categories";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:31:"import_downloads_and_categories";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:27:"import_images_and_galleries";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:27:"import_images_and_galleries";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:11:"import_wiki";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:11:"import_wiki";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:21:"import_custom_comcode";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:21:"import_custom_comcode";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:20:"import_comcode_pages";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:20:"import_comcode_pages";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:32:"import_staff_checklist_cus_tasks";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:32:"import_staff_checklist_cus_tasks";s:11:"description";s:20:"Import custom tasks.";s:5:"flags";a:0:{}}s:17:"import_wordfilter";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:17:"import_wordfilter";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:15:"import_calendar";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:15:"import_calendar";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:16:"import_redirects";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:16:"import_redirects";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:13:"import_themes";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:13:"import_themes";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:22:"import_support_tickets";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:22:"import_support_tickets";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:27:"_import_ticket_extra_access";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}}s:4:"name";s:27:"_import_ticket_extra_access";s:11:"description";s:27:"Import ticket extra access.";s:5:"flags";a:0:{}}s:29:"_import_ticket_known_emailers";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}}s:4:"name";s:29:"_import_ticket_known_emailers";s:11:"description";s:30:"Imports ticket known emailers.";s:5:"flags";a:0:{}}s:26:"import_useronline_tracking";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:26:"import_useronline_tracking";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:14:"import_ip_bans";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:14:"import_ip_bans";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:12:"import_zones";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:12:"import_zones";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:17:"import_catalogues";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:17:"import_catalogues";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:17:"import_chat_rooms";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:17:"import_chat_rooms";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:13:"import_awards";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:13:"import_awards";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:15:"import_filedump";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:15:"import_filedump";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:18:"import_permissions";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:18:"import_permissions";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:20:"import_notifications";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:20:"import_notifications";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:17:"import_cns_groups";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:17:"import_cns_groups";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:18:"import_cns_members";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:18:"import_cns_members";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:32:"import_cns_custom_profile_fields";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:32:"import_cns_custom_profile_fields";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:26:"_import_f_member_cpf_perms";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}}s:4:"name";s:26:"_import_f_member_cpf_perms";s:11:"description";s:23:"Import cpf premissions.";s:5:"flags";a:0:{}}s:26:"import_cns_forum_groupings";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:26:"import_cns_forum_groupings";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:17:"import_cns_forums";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:17:"import_cns_forums";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:17:"import_cns_topics";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:17:"import_cns_topics";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:16:"import_cns_posts";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:16:"import_cns_posts";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:26:"import_cns_polls_and_votes";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:26:"import_cns_polls_and_votes";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:20:"import_cns_emoticons";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:20:"import_cns_emoticons";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:18:"convert_multi_code";a:6:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:10:"multi_code";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:10:"Multi code";s:11:"phpdoc_name";s:10:"multi_code";}}s:4:"name";s:18:"convert_multi_code";s:11:"description";s:40:"Pass a multi-code through a forum remap.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:14:"New multi code";}}s:28:"import_cns_multi_moderations";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:28:"import_cns_multi_moderations";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:25:"import_cns_post_templates";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:25:"import_cns_post_templates";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:19:"import_cns_warnings";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:19:"import_cns_warnings";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:31:"import_aggregate_type_instances";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:31:"import_aggregate_type_instances";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:23:"_import_content_privacy";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"content_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"The content type";s:11:"phpdoc_name";s:12:"content_type";}i:2;a:5:{s:4:"name";s:6:"old_id";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:10:"The old ID";s:11:"phpdoc_name";s:6:"old_id";}i:3;a:5:{s:4:"name";s:6:"id_new";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:10:"The new ID";s:11:"phpdoc_name";s:6:"id_new";}}s:4:"name";s:23:"_import_content_privacy";s:11:"description";s:39:"Import privacy for a particular record.";s:5:"flags";a:0:{}}s:25:"import_cns_saved_warnings";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:25:"import_cns_saved_warnings";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:25:"import_match_key_messages";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:25:"import_match_key_messages";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:17:"import_menu_items";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:17:"import_menu_items";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:22:"_import_pstore_customs";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}}s:4:"name";s:22:"_import_pstore_customs";s:11:"description";s:24:"Imports custom products.";s:5:"flags";a:0:{}}s:26:"_import_pstore_permissions";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}}s:4:"name";s:26:"_import_pstore_permissions";s:11:"description";s:34:"Imports product store permissions.";s:5:"flags";a:0:{}}s:21:"import_searches_saved";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:21:"import_searches_saved";s:11:"description";s:22:"Import saved searches.";s:5:"flags";a:0:{}}s:31:"import_staff_website_monitoring";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:31:"import_staff_website_monitoring";s:11:"description";s:24:"Imports site-watch-list.";s:5:"flags";a:0:{}}s:18:"import_staff_links";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:18:"import_staff_links";s:11:"description";s:20:"Imports staff-links.";s:5:"flags";a:0:{}}s:25:"_import_review_supplement";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:11:"rating_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:16:"The rating type.";s:11:"phpdoc_name";s:11:"rating_type";}i:3;a:5:{s:4:"name";s:11:"import_type";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:59:"The import type to get remapping from (null: no remapping).";s:11:"phpdoc_name";s:11:"import_type";}}s:4:"name";s:25:"_import_review_supplement";s:11:"description";s:15:"Import reviews.";s:5:"flags";a:0:{}}s:23:"_import_content_reviews";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:12:"content_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The content type.";s:11:"phpdoc_name";s:12:"content_type";}i:3;a:5:{s:4:"name";s:11:"import_type";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:59:"The import type to get remapping from (null: no remapping).";s:11:"phpdoc_name";s:11:"import_type";}}s:4:"name";s:23:"_import_content_reviews";s:11:"description";s:32:"Import content review schedules.";s:5:"flags";a:0:{}}s:31:"_import_catalogue_entry_linkage";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:12:"content_type";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:17:"The content type.";s:11:"phpdoc_name";s:12:"content_type";}i:3;a:5:{s:4:"name";s:11:"import_type";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:59:"The import type to get remapping from (null: no remapping).";s:11:"phpdoc_name";s:11:"import_type";}}s:4:"name";s:31:"_import_catalogue_entry_linkage";s:11:"description";s:45:"Import custom fields for a particular record.";s:5:"flags";a:0:{}}s:22:"_fix_comcode_ownership";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/cms_merge.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"rows";s:3:"ref";b:1;s:4:"type";s:5:"array";s:11:"description";s:33:"Rows with potential fields to fix";s:11:"phpdoc_name";s:4:"rows";}}s:4:"name";s:22:"_fix_comcode_ownership";s:11:"description";s:36:"Re-map any Comcode ownership fields.";s:5:"flags";a:0:{}}}s:4:"name";s:14:"Hook_cms_merge";s:7:"comment";b:1;}s:16:"Hook_csv_members";a:3:{s:9:"functions";a:1:{s:4:"info";a:6:{s:8:"filename";s:50:"sources/hooks/modules/admin_import/csv_members.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Standard importer hook info function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:55:"Importer handling details (null: importer is disabled).";}}}s:4:"name";s:16:"Hook_csv_members";s:7:"comment";b:1;}s:14:"Hook_downloads";a:3:{s:9:"functions";a:1:{s:4:"info";a:6:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/downloads.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Standard importer hook info function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:55:"Importer handling details (null: importer is disabled).";}}}s:4:"name";s:14:"Hook_downloads";s:7:"comment";b:1;}s:14:"Hook_emoticons";a:3:{s:9:"functions";a:1:{s:4:"info";a:6:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/emoticons.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Standard importer hook info function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:55:"Importer handling details (null: importer is disabled).";}}}s:4:"name";s:14:"Hook_emoticons";s:7:"comment";b:1;}s:14:"Hook_galleries";a:3:{s:9:"functions";a:1:{s:4:"info";a:6:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/galleries.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Standard importer hook info function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:55:"Importer handling details (null: importer is disabled).";}}}s:4:"name";s:14:"Hook_galleries";s:7:"comment";b:1;}s:14:"Hook_html_site";a:3:{s:9:"functions";a:5:{s:4:"info";a:6:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/html_site.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Standard importer hook info function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:165:"Importer handling details, including lists of all the import types covered (import types are not necessarily the same as actual tables) (null: importer is disabled).";}}s:15:"probe_db_access";a:6:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/html_site.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The probe path";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:15:"probe_db_access";s:11:"description";s:40:"Probe a file path for DB access details.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:66:"A quartet of the details (db_name, db_user, db_pass, table_prefix)";}}s:16:"get_extra_fields";a:6:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/html_site.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_extra_fields";s:11:"description";s:81:"Standard import function to get extra fields to ask for when starting the import.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:12:"Extra fields";}}s:12:"import_pages";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/html_site.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:12:"import_pages";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:12:"_html_filter";a:6:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/html_site.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:13:"file_contents";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:8:"The HTML";s:11:"phpdoc_name";s:13:"file_contents";}i:1;a:5:{s:4:"name";s:8:"fix_html";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:27:"Whether to fix XHTML errors";s:11:"phpdoc_name";s:8:"fix_html";}i:2;a:5:{s:4:"name";s:8:"base_url";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:28:"The base URL of the old site";s:11:"phpdoc_name";s:8:"base_url";}i:3;a:5:{s:4:"name";s:5:"files";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:31:"A list of all files on the site";s:11:"phpdoc_name";s:5:"files";}i:4;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:12:"_html_filter";s:11:"description";s:72:"Filter HTML that has been read, to make it more compatible with Composr.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:13:"Filtered HTML";}}}s:4:"name";s:14:"Hook_html_site";s:7:"comment";b:1;}s:14:"Hook_icalendar";a:3:{s:9:"functions";a:1:{s:4:"info";a:6:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/icalendar.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Standard importer hook info function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:55:"Importer handling details (null: importer is disabled).";}}}s:4:"name";s:14:"Hook_icalendar";s:7:"comment";b:1;}s:9:"Hook_ipb1";a:3:{s:9:"functions";a:5:{s:4:"info";a:6:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/ipb1.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Standard importer hook info function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:165:"Importer handling details, including lists of all the import types covered (import types are not necessarily the same as actual tables) (null: importer is disabled).";}}s:26:"import_cns_forum_groupings";a:5:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/ipb1.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:12:"old_base_dir";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:12:"old_base_dir";}}s:4:"name";s:26:"import_cns_forum_groupings";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:17:"import_cns_forums";a:5:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/ipb1.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:12:"old_base_dir";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:12:"old_base_dir";}}s:4:"name";s:17:"import_cns_forums";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:13:"import_config";a:5:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/ipb1.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:13:"import_config";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:25:"import_cns_private_topics";a:5:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/ipb1.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:12:"old_base_dir";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:12:"old_base_dir";}}s:4:"name";s:25:"import_cns_private_topics";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}}s:4:"name";s:9:"Hook_ipb1";s:7:"comment";b:1;}s:9:"Hook_ipb2";a:3:{s:9:"functions";a:6:{s:4:"info";a:6:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/ipb2.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Standard importer hook info function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:165:"Importer handling details, including lists of all the import types covered (import types are not necessarily the same as actual tables) (null: importer is disabled).";}}s:21:"import_custom_comcode";a:5:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/ipb2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:12:"old_base_dir";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:12:"old_base_dir";}}s:4:"name";s:21:"import_custom_comcode";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:26:"import_cns_forum_groupings";a:5:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/ipb2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:12:"old_base_dir";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:12:"old_base_dir";}}s:4:"name";s:26:"import_cns_forum_groupings";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:17:"import_cns_forums";a:5:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/ipb2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:12:"old_base_dir";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:12:"old_base_dir";}}s:4:"name";s:17:"import_cns_forums";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:13:"import_config";a:5:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/ipb2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:13:"import_config";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:25:"import_cns_private_topics";a:5:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/ipb2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:12:"old_base_dir";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:12:"old_base_dir";}}s:4:"name";s:25:"import_cns_private_topics";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}}s:4:"name";s:9:"Hook_ipb2";s:7:"comment";b:1;}s:9:"Hook_mybb";a:3:{s:9:"functions";a:28:{s:4:"info";a:6:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/mybb.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Standard importer hook info function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:165:"Importer handling details, including lists of all the import types covered (import types are not necessarily the same as actual tables) (null: importer is disabled).";}}s:15:"probe_db_access";a:6:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/mybb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The probe path";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:15:"probe_db_access";s:11:"description";s:40:"Probe a file path for DB access details.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:66:"A quartet of the details (db_name, db_user, db_pass, table_prefix)";}}s:13:"import_config";a:5:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/mybb.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:13:"import_config";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:17:"import_cns_groups";a:5:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/mybb.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:17:"import_cns_groups";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:18:"import_cns_members";a:5:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/mybb.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:18:"import_cns_members";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:23:"import_cns_member_files";a:5:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/mybb.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:23:"import_cns_member_files";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:14:"import_ip_bans";a:5:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/mybb.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:14:"import_ip_bans";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:12:"_un_phpbb_ip";a:6:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/mybb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"ip";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:20:"The phpBB IP address";s:11:"phpdoc_name";s:2:"ip";}}s:4:"name";s:12:"_un_phpbb_ip";s:11:"description";s:59:"Convert an IP address from phpBB hexadecimal string format.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:2:"IP";s:11:"description";s:21:"The normal IP address";}}s:26:"import_cns_forum_groupings";a:5:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/mybb.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:12:"old_base_dir";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:12:"old_base_dir";}}s:4:"name";s:26:"import_cns_forum_groupings";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:17:"import_cns_forums";a:5:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/mybb.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:12:"old_base_dir";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:12:"old_base_dir";}}s:4:"name";s:17:"import_cns_forums";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:17:"import_cns_topics";a:5:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/mybb.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:17:"import_cns_topics";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:16:"import_cns_posts";a:5:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/mybb.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:16:"import_cns_posts";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:25:"_fix_links_callback_topic";a:6:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/mybb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"m";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:9:"The match";s:11:"phpdoc_name";s:1:"m";}}s:4:"name";s:25:"_fix_links_callback_topic";s:11:"description";s:38:"Substitution callback for 'fix_links'.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:23:"The substitution string";}}s:24:"_fix_links_callback_post";a:6:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/mybb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"m";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:9:"The match";s:11:"phpdoc_name";s:1:"m";}}s:4:"name";s:24:"_fix_links_callback_post";s:11:"description";s:38:"Substitution callback for 'fix_links'.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:23:"The substitution string";}}s:25:"_fix_links_callback_forum";a:6:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/mybb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"m";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:9:"The match";s:11:"phpdoc_name";s:1:"m";}}s:4:"name";s:25:"_fix_links_callback_forum";s:11:"description";s:38:"Substitution callback for 'fix_links'.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:23:"The substitution string";}}s:26:"_fix_links_callback_member";a:6:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/mybb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"m";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:9:"The match";s:11:"phpdoc_name";s:1:"m";}}s:4:"name";s:26:"_fix_links_callback_member";s:11:"description";s:38:"Substitution callback for 'fix_links'.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:23:"The substitution string";}}s:9:"fix_links";a:6:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/mybb.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:4:"post";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:33:"The text field text (e.g. a post)";s:11:"phpdoc_name";s:4:"post";}i:1;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:2;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}}s:4:"name";s:9:"fix_links";s:11:"description";s:58:"Convert MyBB URLs pasted in text fields into Composr ones.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:23:"The new text field text";}}s:12:"data_to_disk";a:6:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/mybb.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file data";s:11:"phpdoc_name";s:4:"data";}i:1;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:20:"The optimal filename";s:11:"phpdoc_name";s:8:"filename";}i:2;a:5:{s:4:"name";s:8:"sections";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:33:"The upload type (e.g. cns_photos)";s:11:"phpdoc_name";s:8:"sections";}i:3;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:4;a:7:{s:4:"name";s:12:"table_prefix";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:5;a:7:{s:4:"name";s:15:"output_filename";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:25:"The filename to output to";s:11:"phpdoc_name";s:15:"output_filename";}}s:4:"name";s:12:"data_to_disk";s:11:"description";s:73:"Convert a MyBB database file to a Composr uploaded file (stored on disk).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:7:"The URL";}}s:21:"import_cns_post_files";a:5:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/mybb.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:21:"import_cns_post_files";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:26:"import_cns_polls_and_votes";a:5:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/mybb.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:26:"import_cns_polls_and_votes";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:25:"import_cns_private_topics";a:5:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/mybb.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:12:"old_base_dir";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:12:"old_base_dir";}}s:4:"name";s:25:"import_cns_private_topics";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:22:"convert_topic_emoticon";a:6:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/mybb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"iconid";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:7:"VB code";s:11:"phpdoc_name";s:6:"iconid";}}s:4:"name";s:22:"convert_topic_emoticon";s:11:"description";s:72:"Convert a MyBB topic icon code into a standard Composr theme image code.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"Composr code";}}s:20:"import_notifications";a:5:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/mybb.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:20:"import_notifications";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:17:"import_wordfilter";a:5:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/mybb.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:17:"import_wordfilter";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:21:"import_custom_comcode";a:5:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/mybb.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:21:"import_custom_comcode";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:32:"import_cns_custom_profile_fields";a:5:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/mybb.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:32:"import_cns_custom_profile_fields";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:15:"import_calendar";a:5:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/mybb.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:15:"import_calendar";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:28:"import_cns_multi_moderations";a:5:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/mybb.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:28:"import_cns_multi_moderations";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}}s:4:"name";s:9:"Hook_mybb";s:7:"comment";b:1;}s:27:"Hook_newsletter_subscribers";a:3:{s:9:"functions";a:1:{s:4:"info";a:6:{s:8:"filename";s:61:"sources/hooks/modules/admin_import/newsletter_subscribers.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Standard importer hook info function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:55:"Importer handling details (null: importer is disabled).";}}}s:4:"name";s:27:"Hook_newsletter_subscribers";s:7:"comment";b:1;}s:11:"Hook_phpbb2";a:3:{s:9:"functions";a:21:{s:4:"info";a:6:{s:8:"filename";s:45:"sources/hooks/modules/admin_import/phpbb2.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Standard importer hook info function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:165:"Importer handling details, including lists of all the import types covered (import types are not necessarily the same as actual tables) (null: importer is disabled).";}}s:15:"probe_db_access";a:6:{s:8:"filename";s:45:"sources/hooks/modules/admin_import/phpbb2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The probe path";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:15:"probe_db_access";s:11:"description";s:40:"Probe a file path for DB access details.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:66:"A quartet of the details (db_name, db_user, db_pass, table_prefix)";}}s:13:"import_config";a:5:{s:8:"filename";s:45:"sources/hooks/modules/admin_import/phpbb2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:13:"import_config";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:17:"import_cns_groups";a:5:{s:8:"filename";s:45:"sources/hooks/modules/admin_import/phpbb2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:17:"import_cns_groups";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:18:"import_cns_members";a:5:{s:8:"filename";s:45:"sources/hooks/modules/admin_import/phpbb2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:18:"import_cns_members";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:23:"import_cns_member_files";a:5:{s:8:"filename";s:45:"sources/hooks/modules/admin_import/phpbb2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:23:"import_cns_member_files";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:14:"import_ip_bans";a:5:{s:8:"filename";s:45:"sources/hooks/modules/admin_import/phpbb2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:14:"import_ip_bans";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:12:"_un_phpbb_ip";a:6:{s:8:"filename";s:45:"sources/hooks/modules/admin_import/phpbb2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"ip";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:20:"The phpBB IP address";s:11:"phpdoc_name";s:2:"ip";}}s:4:"name";s:12:"_un_phpbb_ip";s:11:"description";s:59:"Convert an IP address from phpBB hexadecimal string format.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:2:"IP";s:11:"description";s:21:"The normal IP address";}}s:26:"import_cns_forum_groupings";a:5:{s:8:"filename";s:45:"sources/hooks/modules/admin_import/phpbb2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:12:"old_base_dir";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:12:"old_base_dir";}}s:4:"name";s:26:"import_cns_forum_groupings";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:17:"import_cns_forums";a:5:{s:8:"filename";s:45:"sources/hooks/modules/admin_import/phpbb2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:12:"old_base_dir";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:12:"old_base_dir";}}s:4:"name";s:17:"import_cns_forums";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:17:"import_cns_topics";a:5:{s:8:"filename";s:45:"sources/hooks/modules/admin_import/phpbb2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:17:"import_cns_topics";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:16:"import_cns_posts";a:5:{s:8:"filename";s:45:"sources/hooks/modules/admin_import/phpbb2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:16:"import_cns_posts";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:25:"_fix_links_callback_topic";a:6:{s:8:"filename";s:45:"sources/hooks/modules/admin_import/phpbb2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"m";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:9:"The match";s:11:"phpdoc_name";s:1:"m";}}s:4:"name";s:25:"_fix_links_callback_topic";s:11:"description";s:38:"Substitution callback for 'fix_links'.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:23:"The substitution string";}}s:25:"_fix_links_callback_forum";a:6:{s:8:"filename";s:45:"sources/hooks/modules/admin_import/phpbb2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"m";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:9:"The match";s:11:"phpdoc_name";s:1:"m";}}s:4:"name";s:25:"_fix_links_callback_forum";s:11:"description";s:38:"Substitution callback for 'fix_links'.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:23:"The substitution string";}}s:26:"_fix_links_callback_member";a:6:{s:8:"filename";s:45:"sources/hooks/modules/admin_import/phpbb2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"m";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:9:"The match";s:11:"phpdoc_name";s:1:"m";}}s:4:"name";s:26:"_fix_links_callback_member";s:11:"description";s:38:"Substitution callback for 'fix_links'.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:23:"The substitution string";}}s:9:"fix_links";a:6:{s:8:"filename";s:45:"sources/hooks/modules/admin_import/phpbb2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:4:"post";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:33:"The text field text (e.g. a post)";s:11:"phpdoc_name";s:4:"post";}i:1;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:2;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}}s:4:"name";s:9:"fix_links";s:11:"description";s:59:"Convert phpBB URLs pasted in text fields into Composr ones.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:23:"The new text field text";}}s:21:"import_cns_post_files";a:5:{s:8:"filename";s:45:"sources/hooks/modules/admin_import/phpbb2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:21:"import_cns_post_files";s:11:"description";s:139:"Standard import function. Note that this is designed for a very popular phpBB mod, and will exit silently if the mod hasn't been installed.";s:5:"flags";a:0:{}}s:26:"import_cns_polls_and_votes";a:5:{s:8:"filename";s:45:"sources/hooks/modules/admin_import/phpbb2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:26:"import_cns_polls_and_votes";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:25:"import_cns_private_topics";a:5:{s:8:"filename";s:45:"sources/hooks/modules/admin_import/phpbb2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:12:"old_base_dir";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:12:"old_base_dir";}}s:4:"name";s:25:"import_cns_private_topics";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:20:"import_notifications";a:5:{s:8:"filename";s:45:"sources/hooks/modules/admin_import/phpbb2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:20:"import_notifications";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:17:"import_wordfilter";a:5:{s:8:"filename";s:45:"sources/hooks/modules/admin_import/phpbb2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:17:"import_wordfilter";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}}s:4:"name";s:11:"Hook_phpbb2";s:7:"comment";b:1;}s:11:"Hook_phpbb3";a:3:{s:9:"functions";a:31:{s:4:"info";a:6:{s:8:"filename";s:45:"sources/hooks/modules/admin_import/phpbb3.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Standard importer hook info function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:165:"Importer handling details, including lists of all the import types covered (import types are not necessarily the same as actual tables) (null: importer is disabled).";}}s:15:"probe_db_access";a:6:{s:8:"filename";s:45:"sources/hooks/modules/admin_import/phpbb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The probe path";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:15:"probe_db_access";s:11:"description";s:40:"Probe a file path for DB access details.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:66:"A quartet of the details (db_name, db_user, db_pass, table_prefix)";}}s:13:"import_config";a:5:{s:8:"filename";s:45:"sources/hooks/modules/admin_import/phpbb3.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:13:"import_config";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:18:"import_attachments";a:5:{s:8:"filename";s:45:"sources/hooks/modules/admin_import/phpbb3.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:18:"import_attachments";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:17:"import_cns_groups";a:5:{s:8:"filename";s:45:"sources/hooks/modules/admin_import/phpbb3.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:17:"import_cns_groups";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:13:"_import_permg";a:5:{s:8:"filename";s:45:"sources/hooks/modules/admin_import/phpbb3.php";s:10:"parameters";a:5:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"option_id";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:13:"Option row ID";s:11:"phpdoc_name";s:9:"option_id";}i:3;a:5:{s:4:"name";s:8:"group_id";s:3:"ref";b:0;s:4:"type";s:5:"GROUP";s:11:"description";s:19:"Group it applies to";s:11:"phpdoc_name";s:8:"group_id";}i:4;a:5:{s:4:"name";s:12:"auth_setting";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:7:"Setting";s:11:"phpdoc_name";s:12:"auth_setting";}}s:4:"name";s:13:"_import_permg";s:11:"description";s:95:"Helper function to import a global permission to a usergroup, from a specific phpBB option row.";s:5:"flags";a:0:{}}s:18:"import_cns_members";a:5:{s:8:"filename";s:45:"sources/hooks/modules/admin_import/phpbb3.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:18:"import_cns_members";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:23:"import_cns_member_files";a:5:{s:8:"filename";s:45:"sources/hooks/modules/admin_import/phpbb3.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:23:"import_cns_member_files";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:14:"import_ip_bans";a:5:{s:8:"filename";s:45:"sources/hooks/modules/admin_import/phpbb3.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:14:"import_ip_bans";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:12:"_un_phpbb_ip";a:6:{s:8:"filename";s:45:"sources/hooks/modules/admin_import/phpbb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"ip";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:20:"The phpBB IP address";s:11:"phpdoc_name";s:2:"ip";}}s:4:"name";s:12:"_un_phpbb_ip";s:11:"description";s:59:"Convert an IP address from phpBB hexadecimal string format.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:2:"IP";s:11:"description";s:21:"The normal IP address";}}s:17:"import_cns_forums";a:5:{s:8:"filename";s:45:"sources/hooks/modules/admin_import/phpbb3.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:12:"old_base_dir";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:12:"old_base_dir";}}s:4:"name";s:17:"import_cns_forums";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:31:"_find_parent_forum_and_category";a:6:{s:8:"filename";s:45:"sources/hooks/modules/admin_import/phpbb3.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:4:"rows";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:25:"Rows of forums/categories";s:11:"phpdoc_name";s:4:"rows";}i:1;a:5:{s:4:"name";s:12:"parent_forum";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:69:"Key for the 'parent' (which may be for cat or may be for real parent)";s:11:"phpdoc_name";s:12:"parent_forum";}}s:4:"name";s:31:"_find_parent_forum_and_category";s:11:"description";s:115:"Helper function to locate parent forum and category of a forum. Has to be clever to locate both, by tree traversal.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:37:"A pair: the category ID, the forum ID";}}s:12:"_import_perm";a:5:{s:8:"filename";s:45:"sources/hooks/modules/admin_import/phpbb3.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"option_id";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:13:"Option row ID";s:11:"phpdoc_name";s:9:"option_id";}i:3;a:5:{s:4:"name";s:8:"group_id";s:3:"ref";b:0;s:4:"type";s:5:"GROUP";s:11:"description";s:19:"Group it applies to";s:11:"phpdoc_name";s:8:"group_id";}i:4;a:5:{s:4:"name";s:8:"forum_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:19:"Forum it applies to";s:11:"phpdoc_name";s:8:"forum_id";}i:5;a:5:{s:4:"name";s:12:"auth_setting";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:7:"Setting";s:11:"phpdoc_name";s:12:"auth_setting";}}s:4:"name";s:12:"_import_perm";s:11:"description";s:88:"Helper function to import a permission to a usergroup, from a specific phpBB option row.";s:5:"flags";a:0:{}}s:21:"_translate_permission";a:6:{s:8:"filename";s:45:"sources/hooks/modules/admin_import/phpbb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"perm";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:8:"Old perm";s:11:"phpdoc_name";s:4:"perm";}}s:4:"name";s:21:"_translate_permission";s:11:"description";s:70:"Helper function to translate phpBB permissions to Composr permissions.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:34:"New perm (null: could not convert)";}}s:17:"import_cns_topics";a:5:{s:8:"filename";s:45:"sources/hooks/modules/admin_import/phpbb3.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:17:"import_cns_topics";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:16:"import_cns_posts";a:5:{s:8:"filename";s:45:"sources/hooks/modules/admin_import/phpbb3.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:16:"import_cns_posts";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:25:"_fix_links_callback_topic";a:6:{s:8:"filename";s:45:"sources/hooks/modules/admin_import/phpbb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"m";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:9:"The match";s:11:"phpdoc_name";s:1:"m";}}s:4:"name";s:25:"_fix_links_callback_topic";s:11:"description";s:38:"Substitution callback for 'fix_links'.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:23:"The substitution string";}}s:25:"_fix_links_callback_forum";a:6:{s:8:"filename";s:45:"sources/hooks/modules/admin_import/phpbb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"m";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:9:"The match";s:11:"phpdoc_name";s:1:"m";}}s:4:"name";s:25:"_fix_links_callback_forum";s:11:"description";s:38:"Substitution callback for 'fix_links'.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:23:"The substitution string";}}s:26:"_fix_links_callback_member";a:6:{s:8:"filename";s:45:"sources/hooks/modules/admin_import/phpbb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"m";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:9:"The match";s:11:"phpdoc_name";s:1:"m";}}s:4:"name";s:26:"_fix_links_callback_member";s:11:"description";s:38:"Substitution callback for 'fix_links'.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:23:"The substitution string";}}s:9:"fix_links";a:6:{s:8:"filename";s:45:"sources/hooks/modules/admin_import/phpbb3.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:4:"post";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:33:"The text field text (e.g. a post)";s:11:"phpdoc_name";s:4:"post";}i:1;a:5:{s:4:"name";s:3:"uid";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:10:"Bbcode uid";s:11:"phpdoc_name";s:3:"uid";}i:2;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:3;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:4;a:7:{s:4:"name";s:7:"post_id";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:10:"?AUTO_LINK";s:11:"description";s:75:"The ID of the post/message being imported (null: attachments not supported)";s:11:"phpdoc_name";s:7:"post_id";}i:5;a:7:{s:4:"name";s:5:"is_pm";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:32:"Whether it is a personal message";s:11:"phpdoc_name";s:5:"is_pm";}}s:4:"name";s:9:"fix_links";s:11:"description";s:59:"Convert phpBB URLs pasted in text fields into Composr ones.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:23:"The new text field text";}}s:26:"import_cns_polls_and_votes";a:5:{s:8:"filename";s:45:"sources/hooks/modules/admin_import/phpbb3.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:26:"import_cns_polls_and_votes";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:25:"import_cns_private_topics";a:5:{s:8:"filename";s:45:"sources/hooks/modules/admin_import/phpbb3.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:12:"old_base_dir";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:12:"old_base_dir";}}s:4:"name";s:25:"import_cns_private_topics";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:22:"convert_topic_emoticon";a:6:{s:8:"filename";s:45:"sources/hooks/modules/admin_import/phpbb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"iconid";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:10:"phpBB code";s:11:"phpdoc_name";s:6:"iconid";}}s:4:"name";s:22:"convert_topic_emoticon";s:11:"description";s:100:"Convert a phpBB topic icon code into a standard Composr theme image code (assumes the default ones).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"Composr code";}}s:20:"import_notifications";a:5:{s:8:"filename";s:45:"sources/hooks/modules/admin_import/phpbb3.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:20:"import_notifications";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:21:"import_custom_comcode";a:5:{s:8:"filename";s:45:"sources/hooks/modules/admin_import/phpbb3.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:21:"import_custom_comcode";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:16:"import_bookmarks";a:5:{s:8:"filename";s:45:"sources/hooks/modules/admin_import/phpbb3.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:16:"import_bookmarks";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:17:"import_wordfilter";a:5:{s:8:"filename";s:45:"sources/hooks/modules/admin_import/phpbb3.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:17:"import_wordfilter";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:32:"import_cns_custom_profile_fields";a:5:{s:8:"filename";s:45:"sources/hooks/modules/admin_import/phpbb3.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:32:"import_cns_custom_profile_fields";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:19:"import_cns_warnings";a:5:{s:8:"filename";s:45:"sources/hooks/modules/admin_import/phpbb3.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:19:"import_cns_warnings";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:14:"import_friends";a:5:{s:8:"filename";s:45:"sources/hooks/modules/admin_import/phpbb3.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:14:"import_friends";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:27:"import_reported_posts_forum";a:5:{s:8:"filename";s:45:"sources/hooks/modules/admin_import/phpbb3.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:27:"import_reported_posts_forum";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}}s:4:"name";s:11:"Hook_phpbb3";s:7:"comment";b:1;}s:8:"Hook_rss";a:3:{s:9:"functions";a:1:{s:4:"info";a:6:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/rss.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Standard importer hook info function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:55:"Importer handling details (null: importer is disabled).";}}}s:4:"name";s:8:"Hook_rss";s:7:"comment";b:1;}s:13:"Hook_ipb_base";a:3:{s:9:"functions";a:16:{s:14:"clean_ipb_post";a:6:{s:8:"filename";s:49:"sources/hooks/modules/admin_import/shared/ipb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"post";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:8:"IPB post";s:11:"phpdoc_name";s:4:"post";}}s:4:"name";s:14:"clean_ipb_post";s:11:"description";s:50:"Decode an IPB post to be plain-text (ala comcode).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:16:"The cleaned post";}}s:16:"clean_ipb_post_2";a:6:{s:8:"filename";s:49:"sources/hooks/modules/admin_import/shared/ipb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"post";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:8:"IPB post";s:11:"phpdoc_name";s:4:"post";}}s:4:"name";s:16:"clean_ipb_post_2";s:11:"description";s:33:"Fix non-XHTML parts of IPB posts.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:16:"The cleaned post";}}s:15:"probe_db_access";a:6:{s:8:"filename";s:49:"sources/hooks/modules/admin_import/shared/ipb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The probe path";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:15:"probe_db_access";s:11:"description";s:40:"Probe a file path for DB access details.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:66:"A quartet of the details (db_name, db_user, db_pass, table_prefix)";}}s:17:"import_cns_groups";a:5:{s:8:"filename";s:49:"sources/hooks/modules/admin_import/shared/ipb.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:17:"import_cns_groups";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:15:"import_calendar";a:5:{s:8:"filename";s:49:"sources/hooks/modules/admin_import/shared/ipb.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:15:"import_calendar";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:18:"import_cns_members";a:5:{s:8:"filename";s:49:"sources/hooks/modules/admin_import/shared/ipb.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:18:"import_cns_members";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:23:"import_cns_member_files";a:5:{s:8:"filename";s:49:"sources/hooks/modules/admin_import/shared/ipb.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:23:"import_cns_member_files";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:32:"import_cns_custom_profile_fields";a:5:{s:8:"filename";s:49:"sources/hooks/modules/admin_import/shared/ipb.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:32:"import_cns_custom_profile_fields";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:17:"import_cns_topics";a:5:{s:8:"filename";s:49:"sources/hooks/modules/admin_import/shared/ipb.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:17:"import_cns_topics";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:16:"import_cns_posts";a:5:{s:8:"filename";s:49:"sources/hooks/modules/admin_import/shared/ipb.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:16:"import_cns_posts";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:21:"import_cns_post_files";a:5:{s:8:"filename";s:49:"sources/hooks/modules/admin_import/shared/ipb.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:21:"import_cns_post_files";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:26:"import_cns_polls_and_votes";a:5:{s:8:"filename";s:49:"sources/hooks/modules/admin_import/shared/ipb.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:26:"import_cns_polls_and_votes";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:28:"import_cns_multi_moderations";a:5:{s:8:"filename";s:49:"sources/hooks/modules/admin_import/shared/ipb.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:28:"import_cns_multi_moderations";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:20:"import_notifications";a:5:{s:8:"filename";s:49:"sources/hooks/modules/admin_import/shared/ipb.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:20:"import_notifications";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:19:"import_cns_warnings";a:5:{s:8:"filename";s:49:"sources/hooks/modules/admin_import/shared/ipb.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:19:"import_cns_warnings";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:17:"import_wordfilter";a:5:{s:8:"filename";s:49:"sources/hooks/modules/admin_import/shared/ipb.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:17:"import_wordfilter";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}}s:4:"name";s:13:"Hook_ipb_base";s:7:"comment";b:1;}s:8:"Hook_smf";a:3:{s:9:"functions";a:24:{s:4:"info";a:6:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/smf.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Standard importer hook info function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:165:"Importer handling details, including lists of all the import types covered (import types are not necessarily the same as actual tables) (null: importer is disabled).";}}s:15:"probe_db_access";a:6:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/smf.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The probe path";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:15:"probe_db_access";s:11:"description";s:40:"Probe a file path for DB access details.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:66:"A quartet of the details (db_name, db_user, db_pass, table_prefix)";}}s:13:"import_config";a:5:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/smf.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:13:"import_config";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:17:"import_cns_groups";a:5:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/smf.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:17:"import_cns_groups";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:18:"import_cns_members";a:5:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/smf.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:18:"import_cns_members";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:23:"import_cns_member_files";a:5:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/smf.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:23:"import_cns_member_files";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:14:"import_ip_bans";a:5:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/smf.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:14:"import_ip_bans";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:12:"_un_phpbb_ip";a:6:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/smf.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:2:"ip";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:20:"The phpBB IP address";s:11:"phpdoc_name";s:2:"ip";}}s:4:"name";s:12:"_un_phpbb_ip";s:11:"description";s:59:"Convert an IP address from phpBB hexadecimal string format.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:2:"IP";s:11:"description";s:21:"The normal IP address";}}s:26:"import_cns_forum_groupings";a:5:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/smf.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:12:"old_base_dir";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:12:"old_base_dir";}}s:4:"name";s:26:"import_cns_forum_groupings";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:17:"import_cns_forums";a:5:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/smf.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:12:"old_base_dir";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:12:"old_base_dir";}}s:4:"name";s:17:"import_cns_forums";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:17:"import_cns_topics";a:5:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/smf.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:17:"import_cns_topics";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:16:"import_cns_posts";a:5:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/smf.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:16:"import_cns_posts";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:25:"_fix_links_callback_topic";a:6:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/smf.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"m";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:9:"The match";s:11:"phpdoc_name";s:1:"m";}}s:4:"name";s:25:"_fix_links_callback_topic";s:11:"description";s:38:"Substitution callback for 'fix_links'.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:23:"The substitution string";}}s:25:"_fix_links_callback_forum";a:6:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/smf.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"m";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:9:"The match";s:11:"phpdoc_name";s:1:"m";}}s:4:"name";s:25:"_fix_links_callback_forum";s:11:"description";s:38:"Substitution callback for 'fix_links'.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:23:"The substitution string";}}s:26:"_fix_links_callback_member";a:6:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/smf.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"m";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:9:"The match";s:11:"phpdoc_name";s:1:"m";}}s:4:"name";s:26:"_fix_links_callback_member";s:11:"description";s:38:"Substitution callback for 'fix_links'.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:23:"The substitution string";}}s:9:"fix_links";a:6:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/smf.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:4:"post";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:33:"The text field text (e.g. a post)";s:11:"phpdoc_name";s:4:"post";}i:1;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:2;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:3;a:7:{s:4:"name";s:9:"file_base";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:9:"fix_links";s:11:"description";s:57:"Convert SMF URLs pasted in text fields into Composr ones.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:23:"The new text field text";}}s:12:"data_to_disk";a:6:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/smf.php";s:10:"parameters";a:8:{i:0;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file data";s:11:"phpdoc_name";s:4:"data";}i:1;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:20:"The optimal filename";s:11:"phpdoc_name";s:8:"filename";}i:2;a:5:{s:4:"name";s:8:"sections";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:33:"The upload type (e.g. cns_photos)";s:11:"phpdoc_name";s:8:"sections";}i:3;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:4;a:7:{s:4:"name";s:12:"table_prefix";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:5;a:7:{s:4:"name";s:15:"output_filename";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:25:"The filename to output to";s:11:"phpdoc_name";s:15:"output_filename";}i:6;a:7:{s:4:"name";s:9:"file_base";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}i:7;a:7:{s:4:"name";s:13:"attachment_id";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"Attachment ID";s:11:"phpdoc_name";s:13:"attachment_id";}}s:4:"name";s:12:"data_to_disk";s:11:"description";s:73:"Convert an SMF database file to a Composr uploaded file (stored on disk).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:7:"The URL";}}s:21:"import_cns_post_files";a:5:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/smf.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:21:"import_cns_post_files";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:26:"import_cns_polls_and_votes";a:5:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/smf.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:26:"import_cns_polls_and_votes";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:25:"import_cns_private_topics";a:5:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/smf.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:12:"old_base_dir";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:12:"old_base_dir";}}s:4:"name";s:25:"import_cns_private_topics";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:22:"convert_topic_emoticon";a:6:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/smf.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"iconid";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:7:"VB code";s:11:"phpdoc_name";s:6:"iconid";}}s:4:"name";s:22:"convert_topic_emoticon";s:11:"description";s:71:"Convert a SMF topic icon code into a standard Composr theme image code.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"Composr code";}}s:20:"import_notifications";a:5:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/smf.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:20:"import_notifications";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:17:"import_wordfilter";a:5:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/smf.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:17:"import_wordfilter";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:15:"import_calendar";a:5:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/smf.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:15:"import_calendar";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}}s:4:"name";s:8:"Hook_smf";s:7:"comment";b:1;}s:9:"Hook_smf2";a:3:{s:9:"functions";a:35:{s:4:"info";a:6:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/smf2.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Standard importer hook info function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:165:"Importer handling details, including lists of all the import types covered (import types are not necessarily the same as actual tables) (null: importer is disabled).";}}s:15:"probe_db_access";a:6:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/smf2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The probe path";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:15:"probe_db_access";s:11:"description";s:40:"Probe a file path for DB access details.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:66:"A quartet of the details (db_name, db_user, db_pass, table_prefix)";}}s:13:"import_config";a:5:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/smf2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:13:"import_config";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:28:"import_cns_remove_old_groups";a:5:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/smf2.php";s:10:"parameters";a:0:{}s:4:"name";s:28:"import_cns_remove_old_groups";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:17:"import_cns_groups";a:5:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/smf2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}}s:4:"name";s:17:"import_cns_groups";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:23:"update_group_promotions";a:5:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/smf2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}}s:4:"name";s:23:"update_group_promotions";s:11:"description";s:47:"Update Promotion Thresholds for Imported Groups";s:5:"flags";a:0:{}}s:18:"import_cns_members";a:5:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/smf2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:18:"import_cns_members";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:32:"import_cns_custom_profile_fields";a:5:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/smf2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}}s:4:"name";s:32:"import_cns_custom_profile_fields";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:18:"cpf_options_string";a:6:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/smf2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:7:"default";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"Default value";s:11:"phpdoc_name";s:7:"default";}i:1;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:30:"List of coma seperated options";s:11:"phpdoc_name";s:7:"options";}}s:4:"name";s:18:"cpf_options_string";s:11:"description";s:35:"Used with cns_custom_profile_fields";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:18:"Imploded with pipe";}}s:23:"import_cns_member_files";a:5:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/smf2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:23:"import_cns_member_files";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:14:"import_ip_bans";a:5:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/smf2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:14:"import_ip_bans";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:26:"import_cns_forum_groupings";a:5:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/smf2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:12:"old_base_dir";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:12:"old_base_dir";}}s:4:"name";s:26:"import_cns_forum_groupings";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:17:"import_cns_forums";a:5:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/smf2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:12:"old_base_dir";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:12:"old_base_dir";}}s:4:"name";s:17:"import_cns_forums";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:21:"fill_static_perms_all";a:5:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/smf2.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:3:"pid";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:17:"Profile ID to use";s:11:"phpdoc_name";s:3:"pid";}i:1;a:5:{s:4:"name";s:3:"fid";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:15:"Forum ID to use";s:11:"phpdoc_name";s:3:"fid";}i:2;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:3;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}}s:4:"name";s:21:"fill_static_perms_all";s:11:"description";s:73:"Fills the static_perm_arr with profile permissions for all Composr groups";s:5:"flags";a:0:{}}s:14:"get_role_value";a:6:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/smf2.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:3:"gid";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:15:"Group ID to use";s:11:"phpdoc_name";s:3:"gid";}i:1;a:5:{s:4:"name";s:3:"pid";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:17:"Profile ID to use";s:11:"phpdoc_name";s:3:"pid";}i:2;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:3;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}}s:4:"name";s:14:"get_role_value";s:11:"description";s:44:"Gets the role value for permissions of group";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"integer";s:11:"description";s:14:"The role value";}}s:17:"import_cns_topics";a:5:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/smf2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:17:"import_cns_topics";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:16:"import_cns_posts";a:5:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/smf2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:16:"import_cns_posts";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:25:"_fix_links_callback_topic";a:6:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/smf2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"m";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:9:"The match";s:11:"phpdoc_name";s:1:"m";}}s:4:"name";s:25:"_fix_links_callback_topic";s:11:"description";s:38:"Substitution callback for 'fix_links'.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:23:"The substitution string";}}s:25:"_fix_links_callback_forum";a:6:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/smf2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"m";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:9:"The match";s:11:"phpdoc_name";s:1:"m";}}s:4:"name";s:25:"_fix_links_callback_forum";s:11:"description";s:38:"Substitution callback for 'fix_links'.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:23:"The substitution string";}}s:26:"_fix_links_callback_member";a:6:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/smf2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"m";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:9:"The match";s:11:"phpdoc_name";s:1:"m";}}s:4:"name";s:26:"_fix_links_callback_member";s:11:"description";s:38:"Substitution callback for 'fix_links'.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:23:"The substitution string";}}s:9:"fix_links";a:6:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/smf2.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:4:"post";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:33:"The text field text (e.g. a post)";s:11:"phpdoc_name";s:4:"post";}i:1;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:2;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:3;a:7:{s:4:"name";s:9:"file_base";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:9:"fix_links";s:11:"description";s:57:"Convert SMF URLs pasted in text fields into Composr ones.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:23:"The new text field text";}}s:12:"data_to_disk";a:6:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/smf2.php";s:10:"parameters";a:9:{i:0;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file data";s:11:"phpdoc_name";s:4:"data";}i:1;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:20:"The optimal filename";s:11:"phpdoc_name";s:8:"filename";}i:2;a:5:{s:4:"name";s:8:"sections";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:33:"The upload type (e.g. cns_photos)";s:11:"phpdoc_name";s:8:"sections";}i:3;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:4;a:7:{s:4:"name";s:12:"table_prefix";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:5;a:7:{s:4:"name";s:15:"output_filename";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:25:"The filename to output to";s:11:"phpdoc_name";s:15:"output_filename";}i:6;a:7:{s:4:"name";s:9:"file_base";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}i:7;a:7:{s:4:"name";s:13:"attachment_id";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:17:"The attachment ID";s:11:"phpdoc_name";s:13:"attachment_id";}i:8;a:7:{s:4:"name";s:3:"ext";s:7:"default";s:4:".png";s:11:"default_raw";s:6:"'.png'";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:25:"The file extension to use";s:11:"phpdoc_name";s:3:"ext";}}s:4:"name";s:12:"data_to_disk";s:11:"description";s:73:"Convert an SMF database file to a Composr uploaded file (stored on disk).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:7:"The URL";}}s:21:"import_cns_post_files";a:5:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/smf2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:21:"import_cns_post_files";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:26:"import_cns_polls_and_votes";a:5:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/smf2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:26:"import_cns_polls_and_votes";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:26:"import_cns_personal_topics";a:5:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/smf2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:12:"old_base_dir";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:12:"old_base_dir";}}s:4:"name";s:26:"import_cns_personal_topics";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:22:"convert_topic_emoticon";a:6:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/smf2.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"icon";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:8:"smf icon";s:11:"phpdoc_name";s:4:"icon";}}s:4:"name";s:22:"convert_topic_emoticon";s:11:"description";s:71:"Convert a SMF topic icon code into a standard Composr theme image code.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"Composr code";}}s:20:"import_notifications";a:5:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/smf2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:20:"import_notifications";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:17:"import_wordfilter";a:5:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/smf2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:17:"import_wordfilter";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:15:"static_perm_arr";a:6:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/smf2.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:3:"gid";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:15:"Group ID to map";s:11:"phpdoc_name";s:3:"gid";}i:1;a:5:{s:4:"name";s:3:"pid";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:17:"Profile ID to map";s:11:"phpdoc_name";s:3:"pid";}i:2;a:5:{s:4:"name";s:1:"v";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:12:"Value to map";s:11:"phpdoc_name";s:1:"v";}i:3;a:7:{s:4:"name";s:1:"r";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:32:"Whether to return the map or not";s:11:"phpdoc_name";s:1:"r";}}s:4:"name";s:15:"static_perm_arr";s:11:"description";s:51:"Used to build privilege permission access to Forums";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:64:"The mapped Groups and Profile with highest privilege calculated.";}}s:22:"set_forum_view_accesss";a:5:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/smf2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:3:"gid";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:19:"The Group ID to set";s:11:"phpdoc_name";s:3:"gid";}i:1;a:5:{s:4:"name";s:3:"fid";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:19:"The Forum ID to set";s:11:"phpdoc_name";s:3:"fid";}}s:4:"name";s:22:"set_forum_view_accesss";s:11:"description";s:33:"Used to set view access to Forums";s:5:"flags";a:0:{}}s:26:"sort_set_forum_perms_array";a:5:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/smf2.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:3:"arr";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:47:"The static array map built from static_perm_arr";s:11:"phpdoc_name";s:3:"arr";}i:1;a:5:{s:4:"name";s:8:"forum_id";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:19:"The Forum ID to set";s:11:"phpdoc_name";s:8:"forum_id";}}s:4:"name";s:26:"sort_set_forum_perms_array";s:11:"description";s:33:"Used to set view access to Forums";s:5:"flags";a:0:{}}s:16:"set_forums_perms";a:5:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/smf2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:8:"group_id";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:19:"The Group ID to set";s:11:"phpdoc_name";s:8:"group_id";}i:1;a:5:{s:4:"name";s:8:"forum_id";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:19:"The Forum ID to set";s:11:"phpdoc_name";s:8:"forum_id";}i:2;a:7:{s:4:"name";s:4:"role";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:75:"The basic Role they have: 0=ReadOnly, 1=Post/Submit, 2=Unvetted, 3=Moderate";s:11:"phpdoc_name";s:4:"role";}}s:4:"name";s:16:"set_forums_perms";s:11:"description";s:29:"Used to Set Forum Permissions";s:5:"flags";a:0:{}}s:15:"import_calendar";a:5:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/smf2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:15:"import_calendar";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:14:"import_banners";a:5:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/smf2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:14:"import_banners";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:26:"import_news_and_categories";a:5:{s:8:"filename";s:43:"sources/hooks/modules/admin_import/smf2.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:26:"import_news_and_categories";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}}s:4:"name";s:9:"Hook_smf2";s:7:"comment";b:1;}s:8:"Hook_vb3";a:3:{s:9:"functions";a:27:{s:4:"info";a:6:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/vb3.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Standard importer hook info function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:165:"Importer handling details, including lists of all the import types covered (import types are not necessarily the same as actual tables) (null: importer is disabled).";}}s:15:"probe_db_access";a:6:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/vb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The probe path";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:15:"probe_db_access";s:11:"description";s:40:"Probe a file path for DB access details.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:66:"A quartet of the details (db_name, db_user, db_pass, table_prefix)";}}s:13:"import_config";a:5:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/vb3.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:13:"import_config";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:17:"import_cns_groups";a:5:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/vb3.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:17:"import_cns_groups";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:18:"import_cns_members";a:5:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/vb3.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:18:"import_cns_members";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:23:"import_cns_member_files";a:5:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/vb3.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:23:"import_cns_member_files";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:32:"import_cns_custom_profile_fields";a:5:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/vb3.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:32:"import_cns_custom_profile_fields";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:26:"import_cns_forum_groupings";a:5:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/vb3.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:12:"old_base_dir";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:12:"old_base_dir";}}s:4:"name";s:26:"import_cns_forum_groupings";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:17:"import_cns_forums";a:5:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/vb3.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:12:"old_base_dir";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:12:"old_base_dir";}}s:4:"name";s:17:"import_cns_forums";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:17:"import_cns_topics";a:5:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/vb3.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:17:"import_cns_topics";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:16:"import_cns_posts";a:5:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/vb3.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:16:"import_cns_posts";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:25:"_fix_links_callback_topic";a:6:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/vb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"m";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:9:"The match";s:11:"phpdoc_name";s:1:"m";}}s:4:"name";s:25:"_fix_links_callback_topic";s:11:"description";s:38:"Substitution callback for 'fix_links'.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:23:"The substitution string";}}s:24:"_fix_links_callback_post";a:6:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/vb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"m";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:9:"The match";s:11:"phpdoc_name";s:1:"m";}}s:4:"name";s:24:"_fix_links_callback_post";s:11:"description";s:38:"Substitution callback for 'fix_links'.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:23:"The substitution string";}}s:25:"_fix_links_callback_forum";a:6:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/vb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"m";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:9:"The match";s:11:"phpdoc_name";s:1:"m";}}s:4:"name";s:25:"_fix_links_callback_forum";s:11:"description";s:38:"Substitution callback for 'fix_links'.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:23:"The substitution string";}}s:26:"_fix_links_callback_member";a:6:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/vb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"m";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:9:"The match";s:11:"phpdoc_name";s:1:"m";}}s:4:"name";s:26:"_fix_links_callback_member";s:11:"description";s:38:"Substitution callback for 'fix_links'.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:23:"The substitution string";}}s:9:"fix_links";a:6:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/vb3.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:4:"post";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:33:"The text field text (e.g. a post)";s:11:"phpdoc_name";s:4:"post";}i:1;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:2;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}}s:4:"name";s:9:"fix_links";s:11:"description";s:63:"Convert vBulletin URLs pasted in text fields into Composr ones.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:23:"The new text field text";}}s:21:"import_cns_post_files";a:5:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/vb3.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:21:"import_cns_post_files";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:12:"data_to_disk";a:6:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/vb3.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file data";s:11:"phpdoc_name";s:4:"data";}i:1;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:20:"The optimal filename";s:11:"phpdoc_name";s:8:"filename";}i:2;a:5:{s:4:"name";s:8:"sections";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:33:"The upload type (e.g. cns_photos)";s:11:"phpdoc_name";s:8:"sections";}i:3;a:7:{s:4:"name";s:9:"thumbnail";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:36:"Whether to create a thumbnail for it";s:11:"phpdoc_name";s:9:"thumbnail";}i:4;a:7:{s:4:"name";s:14:"thumbnail_data";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:60:"Thumbnail data (blank: no thumbnail / generate one if asked)";s:11:"phpdoc_name";s:14:"thumbnail_data";}i:5;a:7:{s:4:"name";s:9:"obfuscate";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:34:"Whether to obfuscate the file type";s:11:"phpdoc_name";s:9:"obfuscate";}}s:4:"name";s:12:"data_to_disk";s:11:"description";s:71:"Convert a VB database file to a Composr uploaded file (stored on disk).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:59:"A tuple containing the URL, and if requested, the thumbnail";}}s:26:"import_cns_polls_and_votes";a:5:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/vb3.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:26:"import_cns_polls_and_votes";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:15:"import_calendar";a:5:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/vb3.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:15:"import_calendar";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:25:"import_cns_private_topics";a:5:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/vb3.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:12:"old_base_dir";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:12:"old_base_dir";}}s:4:"name";s:25:"import_cns_private_topics";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:22:"convert_topic_emoticon";a:6:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/vb3.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"iconid";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:7:"VB code";s:11:"phpdoc_name";s:6:"iconid";}}s:4:"name";s:22:"convert_topic_emoticon";s:11:"description";s:70:"Convert a VB topic icon code into a standard Composr theme image code.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"Composr code";}}s:21:"import_custom_comcode";a:5:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/vb3.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:21:"import_custom_comcode";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:20:"import_notifications";a:5:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/vb3.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:20:"import_notifications";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:11:"import_logs";a:5:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/vb3.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:11:"import_logs";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:31:"import_points_gifts_and_charges";a:5:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/vb3.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:31:"import_points_gifts_and_charges";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:17:"import_wordfilter";a:5:{s:8:"filename";s:42:"sources/hooks/modules/admin_import/vb3.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:17:"import_wordfilter";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}}s:4:"name";s:8:"Hook_vb3";s:7:"comment";b:1;}s:14:"Hook_wordpress";a:3:{s:9:"functions";a:1:{s:4:"info";a:6:{s:8:"filename";s:48:"sources/hooks/modules/admin_import/wordpress.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Standard importer hook info function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:55:"Importer handling details (null: importer is disabled).";}}}s:4:"name";s:14:"Hook_wordpress";s:7:"comment";b:1;}s:10:"Hook_wowbb";a:3:{s:9:"functions";a:21:{s:4:"info";a:6:{s:8:"filename";s:44:"sources/hooks/modules/admin_import/wowbb.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Standard importer hook info function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:165:"Importer handling details, including lists of all the import types covered (import types are not necessarily the same as actual tables) (null: importer is disabled).";}}s:15:"probe_db_access";a:6:{s:8:"filename";s:44:"sources/hooks/modules/admin_import/wowbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:14:"The probe path";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:15:"probe_db_access";s:11:"description";s:40:"Probe a file path for DB access details.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:66:"A quartet of the details (db_name, db_user, db_pass, table_prefix)";}}s:13:"import_config";a:5:{s:8:"filename";s:44:"sources/hooks/modules/admin_import/wowbb.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:13:"import_config";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:17:"import_cns_groups";a:5:{s:8:"filename";s:44:"sources/hooks/modules/admin_import/wowbb.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:17:"import_cns_groups";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:18:"import_cns_members";a:5:{s:8:"filename";s:44:"sources/hooks/modules/admin_import/wowbb.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:18:"import_cns_members";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:14:"import_ip_bans";a:5:{s:8:"filename";s:44:"sources/hooks/modules/admin_import/wowbb.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:14:"import_ip_bans";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:26:"import_cns_forum_groupings";a:5:{s:8:"filename";s:44:"sources/hooks/modules/admin_import/wowbb.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:12:"old_base_dir";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:12:"old_base_dir";}}s:4:"name";s:26:"import_cns_forum_groupings";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:17:"import_cns_forums";a:5:{s:8:"filename";s:44:"sources/hooks/modules/admin_import/wowbb.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:12:"old_base_dir";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:12:"old_base_dir";}}s:4:"name";s:17:"import_cns_forums";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:17:"import_cns_topics";a:5:{s:8:"filename";s:44:"sources/hooks/modules/admin_import/wowbb.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:17:"import_cns_topics";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:16:"import_cns_posts";a:5:{s:8:"filename";s:44:"sources/hooks/modules/admin_import/wowbb.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:16:"import_cns_posts";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:25:"_fix_links_callback_topic";a:6:{s:8:"filename";s:44:"sources/hooks/modules/admin_import/wowbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"m";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:9:"The match";s:11:"phpdoc_name";s:1:"m";}}s:4:"name";s:25:"_fix_links_callback_topic";s:11:"description";s:38:"Substitution callback for 'fix_links'.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:23:"The substitution string";}}s:25:"_fix_links_callback_forum";a:6:{s:8:"filename";s:44:"sources/hooks/modules/admin_import/wowbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"m";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:9:"The match";s:11:"phpdoc_name";s:1:"m";}}s:4:"name";s:25:"_fix_links_callback_forum";s:11:"description";s:38:"Substitution callback for 'fix_links'.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:23:"The substitution string";}}s:26:"_fix_links_callback_member";a:6:{s:8:"filename";s:44:"sources/hooks/modules/admin_import/wowbb.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:1:"m";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:9:"The match";s:11:"phpdoc_name";s:1:"m";}}s:4:"name";s:26:"_fix_links_callback_member";s:11:"description";s:38:"Substitution callback for 'fix_links'.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:23:"The substitution string";}}s:9:"fix_links";a:6:{s:8:"filename";s:44:"sources/hooks/modules/admin_import/wowbb.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:4:"post";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:33:"The text field text (e.g. a post)";s:11:"phpdoc_name";s:4:"post";}i:1;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:2;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:3;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:9:"fix_links";s:11:"description";s:59:"Convert WowBB URLs pasted in text fields into Composr ones.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:23:"The new text field text";}}s:12:"data_to_disk";a:6:{s:8:"filename";s:44:"sources/hooks/modules/admin_import/wowbb.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:4:"data";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"The file data";s:11:"phpdoc_name";s:4:"data";}i:1;a:5:{s:4:"name";s:8:"filename";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:20:"The optimal filename";s:11:"phpdoc_name";s:8:"filename";}i:2;a:5:{s:4:"name";s:8:"sections";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:33:"The upload type (e.g. cns_photos)";s:11:"phpdoc_name";s:8:"sections";}}s:4:"name";s:12:"data_to_disk";s:11:"description";s:74:"Convert a WowBB database file to a Composr uploaded file (stored on disk).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:7:"The URL";}}s:21:"import_cns_post_files";a:5:{s:8:"filename";s:44:"sources/hooks/modules/admin_import/wowbb.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:21:"import_cns_post_files";s:11:"description";s:139:"Standard import function. Note that this is designed for a very popular phpBB mod, and will exit silently if the mod hasn't been installed.";s:5:"flags";a:0:{}}s:26:"import_cns_polls_and_votes";a:5:{s:8:"filename";s:44:"sources/hooks/modules/admin_import/wowbb.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:26:"import_cns_polls_and_votes";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:25:"import_cns_private_topics";a:5:{s:8:"filename";s:44:"sources/hooks/modules/admin_import/wowbb.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:25:"import_cns_private_topics";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:20:"import_notifications";a:5:{s:8:"filename";s:44:"sources/hooks/modules/admin_import/wowbb.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:20:"import_notifications";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:17:"import_wordfilter";a:5:{s:8:"filename";s:44:"sources/hooks/modules/admin_import/wowbb.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:17:"import_wordfilter";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}s:15:"import_calendar";a:5:{s:8:"filename";s:44:"sources/hooks/modules/admin_import/wowbb.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"db";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:32:"The DB connection to import from";s:11:"phpdoc_name";s:2:"db";}i:1;a:5:{s:4:"name";s:12:"table_prefix";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:43:"The table prefix the target prefix is using";s:11:"phpdoc_name";s:12:"table_prefix";}i:2;a:5:{s:4:"name";s:9:"file_base";s:3:"ref";b:0;s:4:"type";s:4:"PATH";s:11:"description";s:40:"The base directory we are importing from";s:11:"phpdoc_name";s:9:"file_base";}}s:4:"name";s:15:"import_calendar";s:11:"description";s:25:"Standard import function.";s:5:"flags";a:0:{}}}s:4:"name";s:10:"Hook_wowbb";s:7:"comment";b:1;}s:39:"Hook_admin_import_types_aggregate_types";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:60:"sources/hooks/modules/admin_import_types/aggregate_types.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:32:"Get a map of valid import types.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:71:"A map from codename to the language string that names them to the user.";}}}s:4:"name";s:39:"Hook_admin_import_types_aggregate_types";s:7:"comment";b:1;}s:30:"Hook_admin_import_types_awards";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:51:"sources/hooks/modules/admin_import_types/awards.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:32:"Get a map of valid import types.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:71:"A map from codename to the language string that names them to the user.";}}}s:4:"name";s:30:"Hook_admin_import_types_awards";s:7:"comment";b:1;}s:31:"Hook_admin_import_types_banners";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:52:"sources/hooks/modules/admin_import_types/banners.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:32:"Get a map of valid import types.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:71:"A map from codename to the language string that names them to the user.";}}}s:4:"name";s:31:"Hook_admin_import_types_banners";s:7:"comment";b:1;}s:33:"Hook_admin_import_types_bookmarks";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:54:"sources/hooks/modules/admin_import_types/bookmarks.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:32:"Get a map of valid import types.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:71:"A map from codename to the language string that names them to the user.";}}}s:4:"name";s:33:"Hook_admin_import_types_bookmarks";s:7:"comment";b:1;}s:32:"Hook_admin_import_types_calendar";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:53:"sources/hooks/modules/admin_import_types/calendar.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:32:"Get a map of valid import types.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:71:"A map from codename to the language string that names them to the user.";}}}s:4:"name";s:32:"Hook_admin_import_types_calendar";s:7:"comment";b:1;}s:34:"Hook_admin_import_types_catalogues";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:55:"sources/hooks/modules/admin_import_types/catalogues.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:32:"Get a map of valid import types.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:71:"A map from codename to the language string that names them to the user.";}}}s:4:"name";s:34:"Hook_admin_import_types_catalogues";s:7:"comment";b:1;}s:28:"Hook_admin_import_types_chat";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:49:"sources/hooks/modules/admin_import_types/chat.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:32:"Get a map of valid import types.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:71:"A map from codename to the language string that names them to the user.";}}}s:4:"name";s:28:"Hook_admin_import_types_chat";s:7:"comment";b:1;}s:33:"Hook_admin_import_types_cns_forum";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:54:"sources/hooks/modules/admin_import_types/cns_forum.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:32:"Get a map of valid import types.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:71:"A map from codename to the language string that names them to the user.";}}}s:4:"name";s:33:"Hook_admin_import_types_cns_forum";s:7:"comment";b:1;}s:28:"Hook_admin_import_types_core";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:49:"sources/hooks/modules/admin_import_types/core.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:32:"Get a map of valid import types.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:71:"A map from codename to the language string that names them to the user.";}}}s:4:"name";s:28:"Hook_admin_import_types_core";s:7:"comment";b:1;}s:33:"Hook_admin_import_types_downloads";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:54:"sources/hooks/modules/admin_import_types/downloads.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:32:"Get a map of valid import types.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:71:"A map from codename to the language string that names them to the user.";}}}s:4:"name";s:33:"Hook_admin_import_types_downloads";s:7:"comment";b:1;}s:33:"Hook_admin_import_types_ecommerce";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:54:"sources/hooks/modules/admin_import_types/ecommerce.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:32:"Get a map of valid import types.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:71:"A map from codename to the language string that names them to the user.";}}}s:4:"name";s:33:"Hook_admin_import_types_ecommerce";s:7:"comment";b:1;}s:32:"Hook_admin_import_types_filedump";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:53:"sources/hooks/modules/admin_import_types/filedump.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:32:"Get a map of valid import types.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:71:"A map from codename to the language string that names them to the user.";}}}s:4:"name";s:32:"Hook_admin_import_types_filedump";s:7:"comment";b:1;}s:33:"Hook_admin_import_types_galleries";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:54:"sources/hooks/modules/admin_import_types/galleries.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:32:"Get a map of valid import types.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:71:"A map from codename to the language string that names them to the user.";}}}s:4:"name";s:33:"Hook_admin_import_types_galleries";s:7:"comment";b:1;}s:28:"Hook_admin_import_types_news";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:49:"sources/hooks/modules/admin_import_types/news.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:32:"Get a map of valid import types.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:71:"A map from codename to the language string that names them to the user.";}}}s:4:"name";s:28:"Hook_admin_import_types_news";s:7:"comment";b:1;}s:34:"Hook_admin_import_types_newsletter";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:55:"sources/hooks/modules/admin_import_types/newsletter.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:32:"Get a map of valid import types.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:71:"A map from codename to the language string that names them to the user.";}}}s:4:"name";s:34:"Hook_admin_import_types_newsletter";s:7:"comment";b:1;}s:30:"Hook_admin_import_types_points";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:51:"sources/hooks/modules/admin_import_types/points.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:32:"Get a map of valid import types.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:71:"A map from codename to the language string that names them to the user.";}}}s:4:"name";s:30:"Hook_admin_import_types_points";s:7:"comment";b:1;}s:34:"Hook_admin_import_types_pointstore";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:55:"sources/hooks/modules/admin_import_types/pointstore.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:32:"Get a map of valid import types.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:71:"A map from codename to the language string that names them to the user.";}}}s:4:"name";s:34:"Hook_admin_import_types_pointstore";s:7:"comment";b:1;}s:29:"Hook_admin_import_types_polls";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:50:"sources/hooks/modules/admin_import_types/polls.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:32:"Get a map of valid import types.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:71:"A map from codename to the language string that names them to the user.";}}}s:4:"name";s:29:"Hook_admin_import_types_polls";s:7:"comment";b:1;}s:31:"Hook_admin_import_types_quizzes";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:52:"sources/hooks/modules/admin_import_types/quizzes.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:32:"Get a map of valid import types.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:71:"A map from codename to the language string that names them to the user.";}}}s:4:"name";s:31:"Hook_admin_import_types_quizzes";s:7:"comment";b:1;}s:30:"Hook_admin_import_types_quotes";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:51:"sources/hooks/modules/admin_import_types/quotes.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:32:"Get a map of valid import types.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:71:"A map from codename to the language string that names them to the user.";}}}s:4:"name";s:30:"Hook_admin_import_types_quotes";s:7:"comment";b:1;}s:31:"Hook_admin_import_types_tickets";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:52:"sources/hooks/modules/admin_import_types/tickets.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:32:"Get a map of valid import types.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:71:"A map from codename to the language string that names them to the user.";}}}s:4:"name";s:31:"Hook_admin_import_types_tickets";s:7:"comment";b:1;}s:28:"Hook_admin_import_types_wiki";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:49:"sources/hooks/modules/admin_import_types/wiki.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:32:"Get a map of valid import types.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:71:"A map from codename to the language string that names them to the user.";}}}s:4:"name";s:28:"Hook_admin_import_types_wiki";s:7:"comment";b:1;}s:34:"Hook_admin_import_types_wordfilter";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:55:"sources/hooks/modules/admin_import_types/wordfilter.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:32:"Get a map of valid import types.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:71:"A map from codename to the language string that names them to the user.";}}}s:4:"name";s:34:"Hook_admin_import_types_wordfilter";s:7:"comment";b:1;}s:22:"Hook_whatsnew_calendar";a:3:{s:9:"functions";a:2:{s:17:"choose_categories";a:6:{s:8:"filename";s:51:"sources/hooks/modules/admin_newsletter/calendar.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"updated_since";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:52:"The time that there must be entries found newer than";s:11:"phpdoc_name";s:13:"updated_since";}}s:4:"name";s:17:"choose_categories";s:11:"description";s:40:"Find selectable (filterable) categories.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:110:"Tuple of result details: HTML list of all types that can be choosed, title for selection list (null: disabled)";}}s:3:"run";a:6:{s:8:"filename";s:51:"sources/hooks/modules/admin_newsletter/calendar.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:11:"cutoff_time";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:50:"The time that the entries found must be newer than";s:11:"phpdoc_name";s:11:"cutoff_time";}i:1;a:5:{s:4:"name";s:4:"lang";s:3:"ref";b:0;s:4:"type";s:13:"LANGUAGE_NAME";s:11:"description";s:41:"The language the entries found must be in";s:11:"phpdoc_name";s:4:"lang";}i:2;a:5:{s:4:"name";s:6:"filter";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:24:"Category filter to apply";s:11:"phpdoc_name";s:6:"filter";}}s:4:"name";s:3:"run";s:11:"description";s:34:"Run function for newsletter hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"Tuple of result details";}}}s:4:"name";s:22:"Hook_whatsnew_calendar";s:7:"comment";b:1;}s:24:"Hook_whatsnew_catalogues";a:3:{s:9:"functions";a:2:{s:17:"choose_categories";a:6:{s:8:"filename";s:53:"sources/hooks/modules/admin_newsletter/catalogues.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"updated_since";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:52:"The time that there must be entries found newer than";s:11:"phpdoc_name";s:13:"updated_since";}}s:4:"name";s:17:"choose_categories";s:11:"description";s:40:"Find selectable (filterable) categories.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:110:"Tuple of result details: HTML list of all types that can be choosed, title for selection list (null: disabled)";}}s:3:"run";a:6:{s:8:"filename";s:53:"sources/hooks/modules/admin_newsletter/catalogues.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:11:"cutoff_time";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:50:"The time that the entries found must be newer than";s:11:"phpdoc_name";s:11:"cutoff_time";}i:1;a:5:{s:4:"name";s:4:"lang";s:3:"ref";b:0;s:4:"type";s:13:"LANGUAGE_NAME";s:11:"description";s:41:"The language the entries found must be in";s:11:"phpdoc_name";s:4:"lang";}i:2;a:5:{s:4:"name";s:6:"filter";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:24:"Category filter to apply";s:11:"phpdoc_name";s:6:"filter";}}s:4:"name";s:3:"run";s:11:"description";s:34:"Run function for newsletter hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"Tuple of result details";}}}s:4:"name";s:24:"Hook_whatsnew_catalogues";s:7:"comment";b:1;}s:27:"Hook_whatsnew_cns_forumview";a:3:{s:9:"functions";a:2:{s:17:"choose_categories";a:6:{s:8:"filename";s:56:"sources/hooks/modules/admin_newsletter/cns_forumview.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"updated_since";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:52:"The time that there must be entries found newer than";s:11:"phpdoc_name";s:13:"updated_since";}}s:4:"name";s:17:"choose_categories";s:11:"description";s:40:"Find selectable (filterable) categories.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:110:"Tuple of result details: HTML list of all types that can be choosed, title for selection list (null: disabled)";}}s:3:"run";a:6:{s:8:"filename";s:56:"sources/hooks/modules/admin_newsletter/cns_forumview.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:11:"cutoff_time";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:50:"The time that the entries found must be newer than";s:11:"phpdoc_name";s:11:"cutoff_time";}i:1;a:5:{s:4:"name";s:4:"lang";s:3:"ref";b:0;s:4:"type";s:13:"LANGUAGE_NAME";s:11:"description";s:41:"The language the entries found must be in";s:11:"phpdoc_name";s:4:"lang";}i:2;a:5:{s:4:"name";s:6:"filter";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:24:"Category filter to apply";s:11:"phpdoc_name";s:6:"filter";}}s:4:"name";s:3:"run";s:11:"description";s:34:"Run function for newsletter hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"Tuple of result details";}}}s:4:"name";s:27:"Hook_whatsnew_cns_forumview";s:7:"comment";b:1;}s:27:"Hook_whatsnew_comcode_pages";a:3:{s:9:"functions";a:2:{s:17:"choose_categories";a:6:{s:8:"filename";s:56:"sources/hooks/modules/admin_newsletter/comcode_pages.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"updated_since";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:52:"The time that there must be entries found newer than";s:11:"phpdoc_name";s:13:"updated_since";}}s:4:"name";s:17:"choose_categories";s:11:"description";s:40:"Find selectable (filterable) categories.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:110:"Tuple of result details: HTML list of all types that can be choosed, title for selection list (null: disabled)";}}s:3:"run";a:6:{s:8:"filename";s:56:"sources/hooks/modules/admin_newsletter/comcode_pages.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:11:"cutoff_time";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:50:"The time that the entries found must be newer than";s:11:"phpdoc_name";s:11:"cutoff_time";}i:1;a:5:{s:4:"name";s:4:"lang";s:3:"ref";b:0;s:4:"type";s:13:"LANGUAGE_NAME";s:11:"description";s:41:"The language the entries found must be in";s:11:"phpdoc_name";s:4:"lang";}i:2;a:5:{s:4:"name";s:6:"filter";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:24:"Category filter to apply";s:11:"phpdoc_name";s:6:"filter";}}s:4:"name";s:3:"run";s:11:"description";s:34:"Run function for newsletter hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"Tuple of result details";}}}s:4:"name";s:27:"Hook_whatsnew_comcode_pages";s:7:"comment";b:1;}s:23:"Hook_whatsnew_downloads";a:3:{s:9:"functions";a:2:{s:17:"choose_categories";a:6:{s:8:"filename";s:52:"sources/hooks/modules/admin_newsletter/downloads.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"updated_since";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:52:"The time that there must be entries found newer than";s:11:"phpdoc_name";s:13:"updated_since";}}s:4:"name";s:17:"choose_categories";s:11:"description";s:40:"Find selectable (filterable) categories.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:110:"Tuple of result details: HTML list of all types that can be choosed, title for selection list (null: disabled)";}}s:3:"run";a:6:{s:8:"filename";s:52:"sources/hooks/modules/admin_newsletter/downloads.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:11:"cutoff_time";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:50:"The time that the entries found must be newer than";s:11:"phpdoc_name";s:11:"cutoff_time";}i:1;a:5:{s:4:"name";s:4:"lang";s:3:"ref";b:0;s:4:"type";s:13:"LANGUAGE_NAME";s:11:"description";s:41:"The language the entries found must be in";s:11:"phpdoc_name";s:4:"lang";}i:2;a:5:{s:4:"name";s:6:"filter";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:24:"Category filter to apply";s:11:"phpdoc_name";s:6:"filter";}}s:4:"name";s:3:"run";s:11:"description";s:34:"Run function for newsletter hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"Tuple of result details";}}}s:4:"name";s:23:"Hook_whatsnew_downloads";s:7:"comment";b:1;}s:23:"Hook_whatsnew_galleries";a:3:{s:9:"functions";a:2:{s:17:"choose_categories";a:6:{s:8:"filename";s:52:"sources/hooks/modules/admin_newsletter/galleries.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"updated_since";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:52:"The time that there must be entries found newer than";s:11:"phpdoc_name";s:13:"updated_since";}}s:4:"name";s:17:"choose_categories";s:11:"description";s:40:"Find selectable (filterable) categories.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:110:"Tuple of result details: HTML list of all types that can be choosed, title for selection list (null: disabled)";}}s:3:"run";a:6:{s:8:"filename";s:52:"sources/hooks/modules/admin_newsletter/galleries.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:11:"cutoff_time";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:50:"The time that the entries found must be newer than";s:11:"phpdoc_name";s:11:"cutoff_time";}i:1;a:5:{s:4:"name";s:4:"lang";s:3:"ref";b:0;s:4:"type";s:13:"LANGUAGE_NAME";s:11:"description";s:41:"The language the entries found must be in";s:11:"phpdoc_name";s:4:"lang";}i:2;a:5:{s:4:"name";s:6:"filter";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:24:"Category filter to apply";s:11:"phpdoc_name";s:6:"filter";}}s:4:"name";s:3:"run";s:11:"description";s:34:"Run function for newsletter hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"Tuple of result details";}}}s:4:"name";s:23:"Hook_whatsnew_galleries";s:7:"comment";b:1;}s:18:"Hook_whatsnew_news";a:3:{s:9:"functions";a:2:{s:17:"choose_categories";a:6:{s:8:"filename";s:47:"sources/hooks/modules/admin_newsletter/news.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:13:"updated_since";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:52:"The time that there must be entries found newer than";s:11:"phpdoc_name";s:13:"updated_since";}}s:4:"name";s:17:"choose_categories";s:11:"description";s:40:"Find selectable (filterable) categories.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:110:"Tuple of result details: HTML list of all types that can be choosed, title for selection list (null: disabled)";}}s:3:"run";a:6:{s:8:"filename";s:47:"sources/hooks/modules/admin_newsletter/news.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:11:"cutoff_time";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:50:"The time that the entries found must be newer than";s:11:"phpdoc_name";s:11:"cutoff_time";}i:1;a:5:{s:4:"name";s:4:"lang";s:3:"ref";b:0;s:4:"type";s:13:"LANGUAGE_NAME";s:11:"description";s:41:"The language the entries found must be in";s:11:"phpdoc_name";s:4:"lang";}i:2;a:5:{s:4:"name";s:6:"filter";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:24:"Category filter to apply";s:11:"phpdoc_name";s:6:"filter";}i:3;a:7:{s:4:"name";s:7:"in_full";s:7:"default";i:1;s:11:"default_raw";s:1:"1";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:46:"Whether to use full article instead of summary";s:11:"phpdoc_name";s:7:"in_full";}}s:4:"name";s:3:"run";s:11:"description";s:34:"Run function for newsletter hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"Tuple of result details";}}}s:4:"name";s:18:"Hook_whatsnew_news";s:7:"comment";b:1;}s:18:"Hook_whatsnew_quiz";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:47:"sources/hooks/modules/admin_newsletter/quiz.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:11:"cutoff_time";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:50:"The time that the entries found must be newer than";s:11:"phpdoc_name";s:11:"cutoff_time";}i:1;a:5:{s:4:"name";s:4:"lang";s:3:"ref";b:0;s:4:"type";s:13:"LANGUAGE_NAME";s:11:"description";s:41:"The language the entries found must be in";s:11:"phpdoc_name";s:4:"lang";}i:2;a:5:{s:4:"name";s:6:"filter";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:24:"Category filter to apply";s:11:"phpdoc_name";s:6:"filter";}}s:4:"name";s:3:"run";s:11:"description";s:34:"Run function for newsletter hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"Tuple of result details";}}}s:4:"name";s:18:"Hook_whatsnew_quiz";s:7:"comment";b:1;}s:18:"Hook_whatsnew_wiki";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:47:"sources/hooks/modules/admin_newsletter/wiki.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:11:"cutoff_time";s:3:"ref";b:0;s:4:"type";s:4:"TIME";s:11:"description";s:50:"The time that the entries found must be newer than";s:11:"phpdoc_name";s:11:"cutoff_time";}i:1;a:5:{s:4:"name";s:4:"lang";s:3:"ref";b:0;s:4:"type";s:13:"LANGUAGE_NAME";s:11:"description";s:41:"The language the entries found must be in";s:11:"phpdoc_name";s:4:"lang";}i:2;a:5:{s:4:"name";s:6:"filter";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:24:"Category filter to apply";s:11:"phpdoc_name";s:6:"filter";}}s:4:"name";s:3:"run";s:11:"description";s:34:"Run function for newsletter hooks.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"Tuple of result details";}}}s:4:"name";s:18:"Hook_whatsnew_wiki";s:7:"comment";b:1;}s:15:"Hook_sw_banners";a:3:{s:9:"functions";a:3:{s:20:"get_current_settings";a:6:{s:8:"filename";s:51:"sources/hooks/modules/admin_setupwizard/banners.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"get_current_settings";s:11:"description";s:46:"Run function for features in the setup wizard.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"Current settings.";}}s:10:"get_fields";a:6:{s:8:"filename";s:51:"sources/hooks/modules/admin_setupwizard/banners.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:14:"field_defaults";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:56:"Default values for the fields, from the install-profile.";s:11:"phpdoc_name";s:14:"field_defaults";}}s:4:"name";s:10:"get_fields";s:11:"description";s:46:"Run function for features in the setup wizard.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"An input field.";}}s:10:"set_fields";a:5:{s:8:"filename";s:51:"sources/hooks/modules/admin_setupwizard/banners.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"set_fields";s:11:"description";s:56:"Run function for setting features from the setup wizard.";s:5:"flags";a:0:{}}}s:4:"name";s:15:"Hook_sw_banners";s:7:"comment";b:1;}s:16:"Hook_sw_calendar";a:3:{s:9:"functions";a:1:{s:10:"get_blocks";a:6:{s:8:"filename";s:52:"sources/hooks/modules/admin_setupwizard/calendar.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"get_blocks";s:11:"description";s:44:"Run function for blocks in the setup wizard.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:37:"Map of block names, to display types.";}}}s:4:"name";s:16:"Hook_sw_calendar";s:7:"comment";b:1;}s:18:"Hook_sw_catalogues";a:3:{s:9:"functions";a:4:{s:20:"get_current_settings";a:6:{s:8:"filename";s:54:"sources/hooks/modules/admin_setupwizard/catalogues.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"get_current_settings";s:11:"description";s:46:"Run function for features in the setup wizard.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"Current settings.";}}s:10:"get_fields";a:6:{s:8:"filename";s:54:"sources/hooks/modules/admin_setupwizard/catalogues.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:14:"field_defaults";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:56:"Default values for the fields, from the install-profile.";s:11:"phpdoc_name";s:14:"field_defaults";}}s:4:"name";s:10:"get_fields";s:11:"description";s:46:"Run function for features in the setup wizard.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"An input field.";}}s:10:"set_fields";a:5:{s:8:"filename";s:54:"sources/hooks/modules/admin_setupwizard/catalogues.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"set_fields";s:11:"description";s:56:"Run function for setting features from the setup wizard.";s:5:"flags";a:0:{}}s:10:"get_blocks";a:6:{s:8:"filename";s:54:"sources/hooks/modules/admin_setupwizard/catalogues.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"get_blocks";s:11:"description";s:44:"Run function for blocks in the setup wizard.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:37:"Map of block names, to display types.";}}}s:4:"name";s:18:"Hook_sw_catalogues";s:7:"comment";b:1;}s:12:"Hook_sw_chat";a:3:{s:9:"functions";a:1:{s:10:"get_blocks";a:6:{s:8:"filename";s:48:"sources/hooks/modules/admin_setupwizard/chat.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"get_blocks";s:11:"description";s:44:"Run function for blocks in the setup wizard.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:37:"Map of block names, to display types.";}}}s:4:"name";s:12:"Hook_sw_chat";s:7:"comment";b:1;}s:17:"Hook_sw_cns_forum";a:3:{s:9:"functions";a:4:{s:20:"get_current_settings";a:6:{s:8:"filename";s:53:"sources/hooks/modules/admin_setupwizard/cns_forum.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"get_current_settings";s:11:"description";s:46:"Run function for features in the setup wizard.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"Current settings.";}}s:10:"get_fields";a:6:{s:8:"filename";s:53:"sources/hooks/modules/admin_setupwizard/cns_forum.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:14:"field_defaults";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:56:"Default values for the fields, from the install-profile.";s:11:"phpdoc_name";s:14:"field_defaults";}}s:4:"name";s:10:"get_fields";s:11:"description";s:46:"Run function for features in the setup wizard.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"An input field.";}}s:10:"set_fields";a:5:{s:8:"filename";s:53:"sources/hooks/modules/admin_setupwizard/cns_forum.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"set_fields";s:11:"description";s:56:"Run function for setting features from the setup wizard.";s:5:"flags";a:0:{}}s:10:"get_blocks";a:6:{s:8:"filename";s:53:"sources/hooks/modules/admin_setupwizard/cns_forum.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"get_blocks";s:11:"description";s:44:"Run function for blocks in the setup wizard.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:37:"Map of block names, to display types.";}}}s:4:"name";s:17:"Hook_sw_cns_forum";s:7:"comment";b:1;}s:12:"Hook_sw_core";a:3:{s:9:"functions";a:3:{s:20:"get_current_settings";a:6:{s:8:"filename";s:48:"sources/hooks/modules/admin_setupwizard/core.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"get_current_settings";s:11:"description";s:46:"Run function for features in the setup wizard.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"Current settings.";}}s:10:"get_fields";a:6:{s:8:"filename";s:48:"sources/hooks/modules/admin_setupwizard/core.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:14:"field_defaults";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:56:"Default values for the fields, from the install-profile.";s:11:"phpdoc_name";s:14:"field_defaults";}}s:4:"name";s:10:"get_fields";s:11:"description";s:46:"Run function for features in the setup wizard.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"An input field.";}}s:10:"set_fields";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_setupwizard/core.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"set_fields";s:11:"description";s:56:"Run function for setting features from the setup wizard.";s:5:"flags";a:0:{}}}s:4:"name";s:12:"Hook_sw_core";s:7:"comment";b:1;}s:17:"Hook_sw_downloads";a:3:{s:9:"functions";a:1:{s:10:"get_blocks";a:6:{s:8:"filename";s:53:"sources/hooks/modules/admin_setupwizard/downloads.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"get_blocks";s:11:"description";s:44:"Run function for blocks in the setup wizard.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:37:"Map of block names, to display types.";}}}s:4:"name";s:17:"Hook_sw_downloads";s:7:"comment";b:1;}s:20:"Hook_sw_forum_blocks";a:3:{s:9:"functions";a:1:{s:10:"get_blocks";a:6:{s:8:"filename";s:56:"sources/hooks/modules/admin_setupwizard/forum_blocks.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"get_blocks";s:11:"description";s:44:"Run function for blocks in the setup wizard.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:37:"Map of block names, to display types.";}}}s:4:"name";s:20:"Hook_sw_forum_blocks";s:7:"comment";b:1;}s:17:"Hook_sw_galleries";a:3:{s:9:"functions";a:4:{s:20:"get_current_settings";a:6:{s:8:"filename";s:53:"sources/hooks/modules/admin_setupwizard/galleries.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"get_current_settings";s:11:"description";s:46:"Run function for features in the setup wizard.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"Current settings.";}}s:10:"get_fields";a:6:{s:8:"filename";s:53:"sources/hooks/modules/admin_setupwizard/galleries.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:14:"field_defaults";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:56:"Default values for the fields, from the install-profile.";s:11:"phpdoc_name";s:14:"field_defaults";}}s:4:"name";s:10:"get_fields";s:11:"description";s:46:"Run function for features in the setup wizard.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"An input field.";}}s:10:"set_fields";a:5:{s:8:"filename";s:53:"sources/hooks/modules/admin_setupwizard/galleries.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"set_fields";s:11:"description";s:56:"Run function for setting features from the setup wizard.";s:5:"flags";a:0:{}}s:10:"get_blocks";a:6:{s:8:"filename";s:53:"sources/hooks/modules/admin_setupwizard/galleries.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"get_blocks";s:11:"description";s:44:"Run function for blocks in the setup wizard.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:37:"Map of block names, to display types.";}}}s:4:"name";s:17:"Hook_sw_galleries";s:7:"comment";b:1;}s:20:"Hook_sw_leader_board";a:3:{s:9:"functions";a:1:{s:10:"get_blocks";a:6:{s:8:"filename";s:56:"sources/hooks/modules/admin_setupwizard/leader_board.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"get_blocks";s:11:"description";s:44:"Run function for blocks in the setup wizard.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:37:"Map of block names, to display types.";}}}s:4:"name";s:20:"Hook_sw_leader_board";s:7:"comment";b:1;}s:12:"Hook_sw_news";a:3:{s:9:"functions";a:4:{s:20:"get_current_settings";a:6:{s:8:"filename";s:48:"sources/hooks/modules/admin_setupwizard/news.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"get_current_settings";s:11:"description";s:46:"Run function for features in the setup wizard.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"Current settings.";}}s:10:"get_fields";a:6:{s:8:"filename";s:48:"sources/hooks/modules/admin_setupwizard/news.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:14:"field_defaults";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:56:"Default values for the fields, from the install-profile.";s:11:"phpdoc_name";s:14:"field_defaults";}}s:4:"name";s:10:"get_fields";s:11:"description";s:46:"Run function for features in the setup wizard.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"An input field.";}}s:10:"set_fields";a:5:{s:8:"filename";s:48:"sources/hooks/modules/admin_setupwizard/news.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"set_fields";s:11:"description";s:56:"Run function for setting features from the setup wizard.";s:5:"flags";a:0:{}}s:10:"get_blocks";a:6:{s:8:"filename";s:48:"sources/hooks/modules/admin_setupwizard/news.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"get_blocks";s:11:"description";s:44:"Run function for blocks in the setup wizard.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:37:"Map of block names, to display types.";}}}s:4:"name";s:12:"Hook_sw_news";s:7:"comment";b:1;}s:18:"Hook_sw_newsletter";a:3:{s:9:"functions";a:1:{s:10:"get_blocks";a:6:{s:8:"filename";s:54:"sources/hooks/modules/admin_setupwizard/newsletter.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"get_blocks";s:11:"description";s:44:"Run function for blocks in the setup wizard.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:37:"Map of block names, to display types.";}}}s:4:"name";s:18:"Hook_sw_newsletter";s:7:"comment";b:1;}s:13:"Hook_sw_polls";a:3:{s:9:"functions";a:1:{s:10:"get_blocks";a:6:{s:8:"filename";s:49:"sources/hooks/modules/admin_setupwizard/polls.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"get_blocks";s:11:"description";s:44:"Run function for blocks in the setup wizard.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:37:"Map of block names, to display types.";}}}s:4:"name";s:13:"Hook_sw_polls";s:7:"comment";b:1;}s:30:"Hook_sw_printer_friendly_block";a:3:{s:9:"functions";a:1:{s:10:"get_blocks";a:6:{s:8:"filename";s:66:"sources/hooks/modules/admin_setupwizard/printer_friendly_block.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"get_blocks";s:11:"description";s:44:"Run function for blocks in the setup wizard.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:37:"Map of block names, to display types.";}}}s:4:"name";s:30:"Hook_sw_printer_friendly_block";s:7:"comment";b:1;}s:21:"Hook_sw_random_quotes";a:3:{s:9:"functions";a:1:{s:10:"get_blocks";a:6:{s:8:"filename";s:57:"sources/hooks/modules/admin_setupwizard/random_quotes.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"get_blocks";s:11:"description";s:44:"Run function for blocks in the setup wizard.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:37:"Map of block names, to display types.";}}}s:4:"name";s:21:"Hook_sw_random_quotes";s:7:"comment";b:1;}s:14:"Hook_sw_search";a:3:{s:9:"functions";a:1:{s:10:"get_blocks";a:6:{s:8:"filename";s:50:"sources/hooks/modules/admin_setupwizard/search.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"get_blocks";s:11:"description";s:44:"Run function for blocks in the setup wizard.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:37:"Map of block names, to display types.";}}}s:4:"name";s:14:"Hook_sw_search";s:7:"comment";b:1;}s:13:"Hook_sw_stats";a:3:{s:9:"functions";a:3:{s:20:"get_current_settings";a:6:{s:8:"filename";s:49:"sources/hooks/modules/admin_setupwizard/stats.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"get_current_settings";s:11:"description";s:46:"Run function for features in the setup wizard.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"Current settings.";}}s:10:"get_fields";a:6:{s:8:"filename";s:49:"sources/hooks/modules/admin_setupwizard/stats.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:14:"field_defaults";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:56:"Default values for the fields, from the install-profile.";s:11:"phpdoc_name";s:14:"field_defaults";}}s:4:"name";s:10:"get_fields";s:11:"description";s:46:"Run function for features in the setup wizard.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"An input field.";}}s:10:"set_fields";a:5:{s:8:"filename";s:49:"sources/hooks/modules/admin_setupwizard/stats.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"set_fields";s:11:"description";s:56:"Run function for setting features from the setup wizard.";s:5:"flags";a:0:{}}}s:4:"name";s:13:"Hook_sw_stats";s:7:"comment";b:1;}s:19:"Hook_sw_stats_block";a:3:{s:9:"functions";a:1:{s:10:"get_blocks";a:6:{s:8:"filename";s:55:"sources/hooks/modules/admin_setupwizard/stats_block.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"get_blocks";s:11:"description";s:44:"Run function for blocks in the setup wizard.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:37:"Map of block names, to display types.";}}}s:4:"name";s:19:"Hook_sw_stats_block";s:7:"comment";b:1;}s:26:"Hook_sw_syndication_blocks";a:3:{s:9:"functions";a:1:{s:10:"get_blocks";a:6:{s:8:"filename";s:62:"sources/hooks/modules/admin_setupwizard/syndication_blocks.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"get_blocks";s:11:"description";s:44:"Run function for blocks in the setup wizard.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:37:"Map of block names, to display types.";}}}s:4:"name";s:26:"Hook_sw_syndication_blocks";s:7:"comment";b:1;}s:18:"Hook_sw_wordfilter";a:3:{s:9:"functions";a:3:{s:20:"get_current_settings";a:6:{s:8:"filename";s:54:"sources/hooks/modules/admin_setupwizard/wordfilter.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"get_current_settings";s:11:"description";s:46:"Run function for features in the setup wizard.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"Current settings.";}}s:10:"get_fields";a:6:{s:8:"filename";s:54:"sources/hooks/modules/admin_setupwizard/wordfilter.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:14:"field_defaults";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:56:"Default values for the fields, from the install-profile.";s:11:"phpdoc_name";s:14:"field_defaults";}}s:4:"name";s:10:"get_fields";s:11:"description";s:46:"Run function for features in the setup wizard.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:15:"An input field.";}}s:10:"set_fields";a:5:{s:8:"filename";s:54:"sources/hooks/modules/admin_setupwizard/wordfilter.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"set_fields";s:11:"description";s:56:"Run function for setting features from the setup wizard.";s:5:"flags";a:0:{}}}s:4:"name";s:18:"Hook_sw_wordfilter";s:7:"comment";b:1;}s:43:"Hook_admin_setupwizard_installprofiles_blog";a:3:{s:9:"functions";a:6:{s:4:"info";a:6:{s:8:"filename";s:64:"sources/hooks/modules/admin_setupwizard_installprofiles/blog.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:33:"Get info about the installprofile";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:29:"Map of installprofile details";}}s:14:"get_addon_list";a:6:{s:8:"filename";s:64:"sources/hooks/modules/admin_setupwizard_installprofiles/blog.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_addon_list";s:11:"description";s:107:"Get a list of addons that are kept with this installation profile (added to the list of addons always kept)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:82:"Pair: List of addons in the profile, Separated list of ones to show under advanced";}}s:14:"field_defaults";a:6:{s:8:"filename";s:64:"sources/hooks/modules/admin_setupwizard_installprofiles/blog.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"field_defaults";s:11:"description";s:71:"Get a map of default settings associated with this installation profile";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"Map of default settings";}}s:14:"default_blocks";a:6:{s:8:"filename";s:64:"sources/hooks/modules/admin_setupwizard_installprofiles/blog.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"default_blocks";s:11:"description";s:30:"Find details of desired blocks";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:33:"Details of what blocks are wanted";}}s:13:"block_options";a:6:{s:8:"filename";s:64:"sources/hooks/modules/admin_setupwizard_installprofiles/blog.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"block_options";s:11:"description";s:38:"Get options for blocks in this profile";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:40:"Details of what block options are wanted";}}s:12:"install_code";a:5:{s:8:"filename";s:64:"sources/hooks/modules/admin_setupwizard_installprofiles/blog.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"install_code";s:11:"description";s:69:"Execute any special code needed to put this install profile into play";s:5:"flags";a:0:{}}}s:4:"name";s:43:"Hook_admin_setupwizard_installprofiles_blog";s:7:"comment";b:1;}s:48:"Hook_admin_setupwizard_installprofiles_community";a:3:{s:9:"functions";a:6:{s:4:"info";a:6:{s:8:"filename";s:69:"sources/hooks/modules/admin_setupwizard_installprofiles/community.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:33:"Get info about the installprofile";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:29:"Map of installprofile details";}}s:14:"get_addon_list";a:6:{s:8:"filename";s:69:"sources/hooks/modules/admin_setupwizard_installprofiles/community.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_addon_list";s:11:"description";s:107:"Get a list of addons that are kept with this installation profile (added to the list of addons always kept)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:82:"Pair: List of addons in the profile, Separated list of ones to show under advanced";}}s:14:"field_defaults";a:6:{s:8:"filename";s:69:"sources/hooks/modules/admin_setupwizard_installprofiles/community.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"field_defaults";s:11:"description";s:71:"Get a map of default settings associated with this installation profile";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"Map of default settings";}}s:14:"default_blocks";a:6:{s:8:"filename";s:69:"sources/hooks/modules/admin_setupwizard_installprofiles/community.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"default_blocks";s:11:"description";s:30:"Find details of desired blocks";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:33:"Details of what blocks are wanted";}}s:13:"block_options";a:6:{s:8:"filename";s:69:"sources/hooks/modules/admin_setupwizard_installprofiles/community.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"block_options";s:11:"description";s:38:"Get options for blocks in this profile";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:40:"Details of what block options are wanted";}}s:12:"install_code";a:5:{s:8:"filename";s:69:"sources/hooks/modules/admin_setupwizard_installprofiles/community.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"install_code";s:11:"description";s:69:"Execute any special code needed to put this install profile into play";s:5:"flags";a:0:{}}}s:4:"name";s:48:"Hook_admin_setupwizard_installprofiles_community";s:7:"comment";b:1;}s:47:"Hook_admin_setupwizard_installprofiles_infosite";a:3:{s:9:"functions";a:6:{s:4:"info";a:6:{s:8:"filename";s:68:"sources/hooks/modules/admin_setupwizard_installprofiles/infosite.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:33:"Get info about the installprofile";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:29:"Map of installprofile details";}}s:14:"get_addon_list";a:6:{s:8:"filename";s:68:"sources/hooks/modules/admin_setupwizard_installprofiles/infosite.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_addon_list";s:11:"description";s:107:"Get a list of addons that are kept with this installation profile (added to the list of addons always kept)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:82:"Pair: List of addons in the profile, Separated list of ones to show under advanced";}}s:14:"field_defaults";a:6:{s:8:"filename";s:68:"sources/hooks/modules/admin_setupwizard_installprofiles/infosite.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"field_defaults";s:11:"description";s:71:"Get a map of default settings associated with this installation profile";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"Map of default settings";}}s:14:"default_blocks";a:6:{s:8:"filename";s:68:"sources/hooks/modules/admin_setupwizard_installprofiles/infosite.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"default_blocks";s:11:"description";s:30:"Find details of desired blocks";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:33:"Details of what blocks are wanted";}}s:13:"block_options";a:6:{s:8:"filename";s:68:"sources/hooks/modules/admin_setupwizard_installprofiles/infosite.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"block_options";s:11:"description";s:38:"Get options for blocks in this profile";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:40:"Details of what block options are wanted";}}s:12:"install_code";a:5:{s:8:"filename";s:68:"sources/hooks/modules/admin_setupwizard_installprofiles/infosite.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"install_code";s:11:"description";s:69:"Execute any special code needed to put this install profile into play";s:5:"flags";a:0:{}}}s:4:"name";s:47:"Hook_admin_setupwizard_installprofiles_infosite";s:7:"comment";b:1;}s:51:"Hook_admin_setupwizard_installprofiles_minimalistic";a:3:{s:9:"functions";a:6:{s:4:"info";a:6:{s:8:"filename";s:72:"sources/hooks/modules/admin_setupwizard_installprofiles/minimalistic.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:33:"Get info about the installprofile";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:29:"Map of installprofile details";}}s:14:"get_addon_list";a:6:{s:8:"filename";s:72:"sources/hooks/modules/admin_setupwizard_installprofiles/minimalistic.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_addon_list";s:11:"description";s:107:"Get a list of addons that are kept with this installation profile (added to the list of addons always kept)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:113:"Triple: List of addons in the profile, Separated list of ones to show under advanced, Ones we really are shunning";}}s:14:"field_defaults";a:6:{s:8:"filename";s:72:"sources/hooks/modules/admin_setupwizard_installprofiles/minimalistic.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"field_defaults";s:11:"description";s:71:"Get a map of default settings associated with this installation profile";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"Map of default settings";}}s:14:"default_blocks";a:6:{s:8:"filename";s:72:"sources/hooks/modules/admin_setupwizard_installprofiles/minimalistic.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"default_blocks";s:11:"description";s:30:"Find details of desired blocks";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:33:"Details of what blocks are wanted";}}s:13:"block_options";a:6:{s:8:"filename";s:72:"sources/hooks/modules/admin_setupwizard_installprofiles/minimalistic.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"block_options";s:11:"description";s:38:"Get options for blocks in this profile";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:40:"Details of what block options are wanted";}}s:12:"install_code";a:5:{s:8:"filename";s:72:"sources/hooks/modules/admin_setupwizard_installprofiles/minimalistic.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"install_code";s:11:"description";s:69:"Execute any special code needed to put this install profile into play";s:5:"flags";a:0:{}}}s:4:"name";s:51:"Hook_admin_setupwizard_installprofiles_minimalistic";s:7:"comment";b:1;}s:48:"Hook_admin_setupwizard_installprofiles_portfolio";a:3:{s:9:"functions";a:6:{s:4:"info";a:6:{s:8:"filename";s:69:"sources/hooks/modules/admin_setupwizard_installprofiles/portfolio.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:33:"Get info about the installprofile";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:29:"Map of installprofile details";}}s:14:"get_addon_list";a:6:{s:8:"filename";s:69:"sources/hooks/modules/admin_setupwizard_installprofiles/portfolio.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_addon_list";s:11:"description";s:107:"Get a list of addons that are kept with this installation profile (added to the list of addons always kept)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:82:"Pair: List of addons in the profile, Separated list of ones to show under advanced";}}s:14:"field_defaults";a:6:{s:8:"filename";s:69:"sources/hooks/modules/admin_setupwizard_installprofiles/portfolio.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"field_defaults";s:11:"description";s:71:"Get a map of default settings associated with this installation profile";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"Map of default settings";}}s:14:"default_blocks";a:6:{s:8:"filename";s:69:"sources/hooks/modules/admin_setupwizard_installprofiles/portfolio.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"default_blocks";s:11:"description";s:30:"Find details of desired blocks";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:33:"Details of what blocks are wanted";}}s:13:"block_options";a:6:{s:8:"filename";s:69:"sources/hooks/modules/admin_setupwizard_installprofiles/portfolio.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"block_options";s:11:"description";s:38:"Get options for blocks in this profile";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:40:"Details of what block options are wanted";}}s:12:"install_code";a:5:{s:8:"filename";s:69:"sources/hooks/modules/admin_setupwizard_installprofiles/portfolio.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"install_code";s:11:"description";s:69:"Execute any special code needed to put this install profile into play";s:5:"flags";a:0:{}}}s:4:"name";s:48:"Hook_admin_setupwizard_installprofiles_portfolio";s:7:"comment";b:1;}s:47:"Hook_admin_setupwizard_installprofiles_shopping";a:3:{s:9:"functions";a:6:{s:4:"info";a:6:{s:8:"filename";s:68:"sources/hooks/modules/admin_setupwizard_installprofiles/shopping.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:33:"Get info about the installprofile";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:29:"Map of installprofile details";}}s:14:"get_addon_list";a:6:{s:8:"filename";s:68:"sources/hooks/modules/admin_setupwizard_installprofiles/shopping.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"get_addon_list";s:11:"description";s:107:"Get a list of addons that are kept with this installation profile (added to the list of addons always kept)";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:82:"Pair: List of addons in the profile, Separated list of ones to show under advanced";}}s:14:"field_defaults";a:6:{s:8:"filename";s:68:"sources/hooks/modules/admin_setupwizard_installprofiles/shopping.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"field_defaults";s:11:"description";s:71:"Get a map of default settings associated with this installation profile";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"Map of default settings";}}s:14:"default_blocks";a:6:{s:8:"filename";s:68:"sources/hooks/modules/admin_setupwizard_installprofiles/shopping.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"default_blocks";s:11:"description";s:30:"Find details of desired blocks";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:33:"Details of what blocks are wanted";}}s:13:"block_options";a:6:{s:8:"filename";s:68:"sources/hooks/modules/admin_setupwizard_installprofiles/shopping.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"block_options";s:11:"description";s:38:"Get options for blocks in this profile";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:40:"Details of what block options are wanted";}}s:12:"install_code";a:5:{s:8:"filename";s:68:"sources/hooks/modules/admin_setupwizard_installprofiles/shopping.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"install_code";s:11:"description";s:69:"Execute any special code needed to put this install profile into play";s:5:"flags";a:0:{}}}s:4:"name";s:47:"Hook_admin_setupwizard_installprofiles_shopping";s:7:"comment";b:1;}s:33:"Hook_admin_stats_cns_demographics";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:54:"sources/hooks/modules/admin_stats/cns_demographics.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:46:"Define stats screens implemented in this hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:103:"List of screens, each being a map written as do-next icon specification style (null: hook is disabled).";}}s:12:"demographics";a:6:{s:8:"filename";s:54:"sources/hooks/modules/admin_stats/cns_demographics.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"ob";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:23:"The stats module object";s:11:"phpdoc_name";s:2:"ob";}i:1;a:5:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:15:"The screen type";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:12:"demographics";s:11:"description";s:37:"The UI to show Conversr demographics.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:33:"Hook_admin_stats_cns_demographics";s:7:"comment";b:1;}s:34:"Hook_admin_stats_cns_posting_rates";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:55:"sources/hooks/modules/admin_stats/cns_posting_rates.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:46:"Define stats screens implemented in this hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:103:"List of screens, each being a map written as do-next icon specification style (null: hook is disabled).";}}s:13:"posting_rates";a:6:{s:8:"filename";s:55:"sources/hooks/modules/admin_stats/cns_posting_rates.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"ob";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:23:"The stats module object";s:11:"phpdoc_name";s:2:"ob";}i:1;a:5:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:15:"The screen type";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:13:"posting_rates";s:11:"description";s:38:"The UI to show Conversr posting rates.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:34:"Hook_admin_stats_cns_posting_rates";s:7:"comment";b:1;}s:26:"Hook_admin_stats_downloads";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:47:"sources/hooks/modules/admin_stats/downloads.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:46:"Define stats screens implemented in this hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:103:"List of screens, each being a map written as do-next icon specification style (null: hook is disabled).";}}s:9:"downloads";a:6:{s:8:"filename";s:47:"sources/hooks/modules/admin_stats/downloads.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"ob";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:23:"The stats module object";s:11:"phpdoc_name";s:2:"ob";}i:1;a:5:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:15:"The screen type";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:9:"downloads";s:11:"description";s:35:"The UI to show download statistics.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:26:"Hook_admin_stats_downloads";s:7:"comment";b:1;}s:23:"Hook_admin_stats_search";a:3:{s:9:"functions";a:2:{s:4:"info";a:6:{s:8:"filename";s:44:"sources/hooks/modules/admin_stats/search.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:46:"Define stats screens implemented in this hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:103:"List of screens, each being a map written as do-next icon specification style (null: hook is disabled).";}}s:6:"search";a:6:{s:8:"filename";s:44:"sources/hooks/modules/admin_stats/search.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:2:"ob";s:3:"ref";b:0;s:4:"type";s:6:"object";s:11:"description";s:23:"The stats module object";s:11:"phpdoc_name";s:2:"ob";}i:1;a:5:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:15:"The screen type";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:6:"search";s:11:"description";s:35:"The UI to show top search keywords.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:23:"Hook_admin_stats_search";s:7:"comment";b:1;}s:31:"Hook_admin_themewizard_calendar";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:52:"sources/hooks/modules/admin_themewizard/calendar.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:62:"Find details of images to include/exclude in the Theme Wizard.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:88:"A pair: List of theme image patterns to include, List of theme image patterns to exclude";}}}s:4:"name";s:31:"Hook_admin_themewizard_calendar";s:7:"comment";b:1;}s:27:"Hook_admin_themewizard_chat";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/modules/admin_themewizard/chat.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:62:"Find details of images to include/exclude in the Theme Wizard.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:88:"A pair: List of theme image patterns to include, List of theme image patterns to exclude";}}}s:4:"name";s:27:"Hook_admin_themewizard_chat";s:7:"comment";b:1;}s:32:"Hook_admin_themewizard_cns_forum";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:53:"sources/hooks/modules/admin_themewizard/cns_forum.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:62:"Find details of images to include/exclude in the Theme Wizard.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:88:"A pair: List of theme image patterns to include, List of theme image patterns to exclude";}}}s:4:"name";s:32:"Hook_admin_themewizard_cns_forum";s:7:"comment";b:1;}s:41:"Hook_admin_themewizard_collaboration_zone";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:62:"sources/hooks/modules/admin_themewizard/collaboration_zone.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:62:"Find details of images to include/exclude in the Theme Wizard.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:88:"A pair: List of theme image patterns to include, List of theme image patterns to exclude";}}}s:4:"name";s:41:"Hook_admin_themewizard_collaboration_zone";s:7:"comment";b:1;}s:27:"Hook_admin_themewizard_wiki";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:48:"sources/hooks/modules/admin_themewizard/wiki.php";s:10:"parameters";a:0:{}s:4:"name";s:3:"run";s:11:"description";s:62:"Find details of images to include/exclude in the Theme Wizard.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:88:"A pair: List of theme image patterns to include, List of theme image patterns to exclude";}}}s:4:"name";s:27:"Hook_admin_themewizard_wiki";s:7:"comment";b:1;}s:24:"Hook_unvalidated_banners";a:3:{s:9:"functions";a:1:{s:4:"info";a:6:{s:8:"filename";s:51:"sources/hooks/modules/admin_unvalidated/banners.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Find details on the unvalidated hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:42:"Map of hook info (null: hook is disabled).";}}}s:4:"name";s:24:"Hook_unvalidated_banners";s:7:"comment";b:1;}s:25:"Hook_unvalidated_calendar";a:3:{s:9:"functions";a:1:{s:4:"info";a:6:{s:8:"filename";s:52:"sources/hooks/modules/admin_unvalidated/calendar.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Find details on the unvalidated hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:42:"Map of hook info (null: hook is disabled).";}}}s:4:"name";s:25:"Hook_unvalidated_calendar";s:7:"comment";b:1;}s:32:"Hook_unvalidated_catalogue_entry";a:3:{s:9:"functions";a:1:{s:4:"info";a:6:{s:8:"filename";s:59:"sources/hooks/modules/admin_unvalidated/catalogue_entry.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Find details on the unvalidated hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:42:"Map of hook info (null: hook is disabled).";}}}s:4:"name";s:32:"Hook_unvalidated_catalogue_entry";s:7:"comment";b:1;}s:28:"Hook_unvalidated_cns_members";a:3:{s:9:"functions";a:1:{s:4:"info";a:6:{s:8:"filename";s:55:"sources/hooks/modules/admin_unvalidated/cns_members.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Find details on the unvalidated hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:42:"Map of hook info (null: hook is disabled).";}}}s:4:"name";s:28:"Hook_unvalidated_cns_members";s:7:"comment";b:1;}s:26:"Hook_unvalidated_cns_posts";a:3:{s:9:"functions";a:1:{s:4:"info";a:6:{s:8:"filename";s:53:"sources/hooks/modules/admin_unvalidated/cns_posts.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Find details on the unvalidated hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:42:"Map of hook info (null: hook is disabled).";}}}s:4:"name";s:26:"Hook_unvalidated_cns_posts";s:7:"comment";b:1;}s:27:"Hook_unvalidated_cns_topics";a:3:{s:9:"functions";a:1:{s:4:"info";a:6:{s:8:"filename";s:54:"sources/hooks/modules/admin_unvalidated/cns_topics.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Find details on the unvalidated hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:42:"Map of hook info (null: hook is disabled).";}}}s:4:"name";s:27:"Hook_unvalidated_cns_topics";s:7:"comment";b:1;}s:30:"Hook_unvalidated_comcode_pages";a:3:{s:9:"functions";a:1:{s:4:"info";a:6:{s:8:"filename";s:57:"sources/hooks/modules/admin_unvalidated/comcode_pages.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Find details on the unvalidated hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:42:"Map of hook info (null: hook is disabled).";}}}s:4:"name";s:30:"Hook_unvalidated_comcode_pages";s:7:"comment";b:1;}s:26:"Hook_unvalidated_downloads";a:3:{s:9:"functions";a:1:{s:4:"info";a:6:{s:8:"filename";s:53:"sources/hooks/modules/admin_unvalidated/downloads.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Find details on the unvalidated hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:42:"Map of hook info (null: hook is disabled).";}}}s:4:"name";s:26:"Hook_unvalidated_downloads";s:7:"comment";b:1;}s:23:"Hook_unvalidated_images";a:3:{s:9:"functions";a:1:{s:4:"info";a:6:{s:8:"filename";s:50:"sources/hooks/modules/admin_unvalidated/images.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Find details on the unvalidated hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:42:"Map of hook info (null: hook is disabled).";}}}s:4:"name";s:23:"Hook_unvalidated_images";s:7:"comment";b:1;}s:21:"Hook_unvalidated_news";a:3:{s:9:"functions";a:1:{s:4:"info";a:6:{s:8:"filename";s:48:"sources/hooks/modules/admin_unvalidated/news.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Find details on the unvalidated hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:42:"Map of hook info (null: hook is disabled).";}}}s:4:"name";s:21:"Hook_unvalidated_news";s:7:"comment";b:1;}s:21:"Hook_unvalidated_quiz";a:3:{s:9:"functions";a:1:{s:4:"info";a:6:{s:8:"filename";s:48:"sources/hooks/modules/admin_unvalidated/quiz.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Find details on the unvalidated hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:42:"Map of hook info (null: hook is disabled).";}}}s:4:"name";s:21:"Hook_unvalidated_quiz";s:7:"comment";b:1;}s:23:"Hook_unvalidated_videos";a:3:{s:9:"functions";a:1:{s:4:"info";a:6:{s:8:"filename";s:50:"sources/hooks/modules/admin_unvalidated/videos.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Find details on the unvalidated hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:42:"Map of hook info (null: hook is disabled).";}}}s:4:"name";s:23:"Hook_unvalidated_videos";s:7:"comment";b:1;}s:21:"Hook_unvalidated_wiki";a:3:{s:9:"functions";a:1:{s:4:"info";a:6:{s:8:"filename";s:48:"sources/hooks/modules/admin_unvalidated/wiki.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:37:"Find details on the unvalidated hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:42:"Map of hook info (null: hook is disabled).";}}}s:4:"name";s:21:"Hook_unvalidated_wiki";s:7:"comment";b:1;}s:21:"Hook_chat_bot_default";a:3:{s:9:"functions";a:1:{s:15:"handle_commands";a:6:{s:8:"filename";s:43:"sources/hooks/modules/chat_bots/default.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:7:"room_id";s:3:"ref";b:0;s:4:"type";s:9:"AUTO_LINK";s:11:"description";s:22:"The ID of the chatroom";s:11:"phpdoc_name";s:7:"room_id";}i:1;a:5:{s:4:"name";s:7:"command";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:119:"The command used. This is just the chat message, so you can encode and recognise your own parameter scheme if you like.";s:11:"phpdoc_name";s:7:"command";}}s:4:"name";s:15:"handle_commands";s:11:"description";s:158:"Handle hooks supported bot commands. Note multiple bots may support the same commands, and all respond. It is recommended all bots support the command 'help'.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"?string";s:11:"description";s:49:"Bot reply (null: bot does not handle the command)";}}}s:4:"name";s:21:"Hook_chat_bot_default";s:7:"comment";b:1;}s:17:"Hook_gu_downloads";a:3:{s:9:"functions";a:1:{s:16:"new_donext_icons";a:6:{s:8:"filename";s:51:"sources/hooks/modules/galleries_users/downloads.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"cat";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"Gallery name";s:11:"phpdoc_name";s:3:"cat";}}s:4:"name";s:16:"new_donext_icons";s:11:"description";s:44:"Add in new icons to a worked-within gallery.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:7:"Results";}}}s:4:"name";s:17:"Hook_gu_downloads";s:7:"comment";b:1;}s:21:"Hook_members_calendar";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:42:"sources/hooks/modules/members/calendar.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"member_id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:45:"The ID of the member we are getting links for";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:3:"run";s:11:"description";s:94:"Find member-related links to inject to details section of the about tab of the member profile.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:30:"List of pairs: title to value.";}}}s:4:"name";s:21:"Hook_members_calendar";s:7:"comment";b:1;}s:17:"Hook_members_chat";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:38:"sources/hooks/modules/members/chat.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"member_id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:45:"The ID of the member we are getting links for";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:3:"run";s:11:"description";s:94:"Find member-related links to inject to details section of the about tab of the member profile.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:30:"List of pairs: title to value.";}}}s:4:"name";s:17:"Hook_members_chat";s:7:"comment";b:1;}s:22:"Hook_members_ecommerce";a:3:{s:9:"functions";a:2:{s:3:"run";a:6:{s:8:"filename";s:43:"sources/hooks/modules/members/ecommerce.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"member_id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:45:"The ID of the member we are getting links for";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:3:"run";s:11:"description";s:94:"Find member-related links to inject to details section of the about tab of the member profile.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:30:"List of pairs: title to value.";}}s:12:"get_sections";a:6:{s:8:"filename";s:43:"sources/hooks/modules/members/ecommerce.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"member_id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:48:"The ID of the member we are getting sections for";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:12:"get_sections";s:11:"description";s:58:"Get sections to inject to about tab of the member profile.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:41:"List of sections. Each tuple is Tempcode.";}}}s:4:"name";s:22:"Hook_members_ecommerce";s:7:"comment";b:1;}s:17:"Hook_members_news";a:3:{s:9:"functions";a:1:{s:3:"run";a:6:{s:8:"filename";s:38:"sources/hooks/modules/members/news.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"member_id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:45:"The ID of the member we are getting links for";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:3:"run";s:11:"description";s:94:"Find member-related links to inject to details section of the about tab of the member profile.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:30:"List of pairs: title to value.";}}}s:4:"name";s:17:"Hook_members_news";s:7:"comment";b:1;}s:17:"Hook_members_quiz";a:3:{s:9:"functions";a:2:{s:3:"run";a:6:{s:8:"filename";s:38:"sources/hooks/modules/members/quiz.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"member_id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:45:"The ID of the member we are getting links for";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:3:"run";s:11:"description";s:94:"Find member-related links to inject to details section of the about tab of the member profile.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:30:"List of pairs: title to value.";}}s:12:"get_sections";a:6:{s:8:"filename";s:38:"sources/hooks/modules/members/quiz.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"member_id";s:3:"ref";b:0;s:4:"type";s:6:"MEMBER";s:11:"description";s:48:"The ID of the member we are getting sections for";s:11:"phpdoc_name";s:9:"member_id";}}s:4:"name";s:12:"get_sections";s:11:"description";s:58:"Get sections to inject to about tab of the member profile.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:41:"List of sections. Each tuple is Tempcode.";}}}s:4:"name";s:17:"Hook_members_quiz";s:7:"comment";b:1;}s:23:"Hook_pointstore_banners";a:3:{s:9:"functions";a:11:{s:4:"init";a:5:{s:8:"filename";s:44:"sources/hooks/modules/pointstore/banners.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"init";s:11:"description";s:49:"Standard pointstore item initialisation function.";s:5:"flags";a:0:{}}s:4:"info";a:6:{s:8:"filename";s:44:"sources/hooks/modules/pointstore/banners.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:47:"Standard pointstore item "shop front" function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"The "shop fronts"";}}s:10:"bannerinfo";a:6:{s:8:"filename";s:44:"sources/hooks/modules/pointstore/banners.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"bannerinfo";s:11:"description";s:34:"Standard pointstore introspection.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:25:"handle_has_banner_already";a:5:{s:8:"filename";s:44:"sources/hooks/modules/pointstore/banners.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"handle_has_banner_already";s:11:"description";s:51:"Checking to be sure we don't already have a banner.";s:5:"flags";a:0:{}}s:9:"newbanner";a:6:{s:8:"filename";s:44:"sources/hooks/modules/pointstore/banners.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"newbanner";s:11:"description";s:43:"Standard stage of pointstore item purchase.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:10:"_newbanner";a:6:{s:8:"filename";s:44:"sources/hooks/modules/pointstore/banners.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"_newbanner";s:11:"description";s:43:"Standard stage of pointstore item purchase.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:19:"check_afford_banner";a:5:{s:8:"filename";s:44:"sources/hooks/modules/pointstore/banners.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"check_afford_banner";s:11:"description";s:53:"Check that the implied transaction could be afforded.";s:5:"flags";a:0:{}}s:11:"__newbanner";a:6:{s:8:"filename";s:44:"sources/hooks/modules/pointstore/banners.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"__newbanner";s:11:"description";s:43:"Standard stage of pointstore item purchase.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:20:"handle_has_no_banner";a:6:{s:8:"filename";s:44:"sources/hooks/modules/pointstore/banners.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"handle_has_no_banner";s:11:"description";s:89:"Ensure the current member has a banner and return its row. If they do not have one, exit.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:37:"The banner row the current member has";}}s:13:"upgradebanner";a:6:{s:8:"filename";s:44:"sources/hooks/modules/pointstore/banners.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"upgradebanner";s:11:"description";s:43:"Standard stage of pointstore item purchase.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:14:"_upgradebanner";a:6:{s:8:"filename";s:44:"sources/hooks/modules/pointstore/banners.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"_upgradebanner";s:11:"description";s:43:"Standard stage of pointstore item purchase.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:23:"Hook_pointstore_banners";s:7:"comment";b:1;}s:22:"Hook_pointstore_custom";a:3:{s:9:"functions";a:7:{s:4:"init";a:5:{s:8:"filename";s:43:"sources/hooks/modules/pointstore/custom.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"init";s:11:"description";s:49:"Standard pointstore item initialisation function.";s:5:"flags";a:0:{}}s:10:"get_fields";a:6:{s:8:"filename";s:43:"sources/hooks/modules/pointstore/custom.php";s:10:"parameters";a:8:{i:0;a:7:{s:4:"name";s:11:"name_suffix";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:44:"What to place onto the end of the field name";s:11:"phpdoc_name";s:11:"name_suffix";}i:1;a:7:{s:4:"name";s:5:"title";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:5:"Title";s:11:"phpdoc_name";s:5:"title";}i:2;a:7:{s:4:"name";s:11:"description";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:11:"Description";s:11:"phpdoc_name";s:11:"description";}i:3;a:7:{s:4:"name";s:7:"enabled";s:7:"default";i:1;s:11:"default_raw";s:1:"1";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:21:"Whether it is enabled";s:11:"phpdoc_name";s:7:"enabled";}i:4;a:7:{s:4:"name";s:4:"cost";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:34:"The cost in points (null: not set)";s:11:"phpdoc_name";s:4:"cost";}i:5;a:7:{s:4:"name";s:14:"one_per_member";s:7:"default";i:0;s:11:"default_raw";s:1:"0";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:42:"Whether it is restricted to one per member";s:11:"phpdoc_name";s:14:"one_per_member";}i:6;a:7:{s:4:"name";s:12:"mail_subject";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:25:"Confirmation mail subject";s:11:"phpdoc_name";s:12:"mail_subject";}i:7;a:7:{s:4:"name";s:9:"mail_body";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:22:"Confirmation mail body";s:11:"phpdoc_name";s:9:"mail_body";}}s:4:"name";s:10:"get_fields";s:11:"description";s:43:"Get fields for adding/editing one of these.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:10:"The fields";}}s:6:"config";a:6:{s:8:"filename";s:43:"sources/hooks/modules/pointstore/custom.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"config";s:11:"description";s:48:"Standard pointstore item configuration function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:96:"A tuple: list of [fields to shown, hidden fields], title for add form, add form (null: disabled)";}}s:11:"save_config";a:5:{s:8:"filename";s:43:"sources/hooks/modules/pointstore/custom.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"save_config";s:11:"description";s:53:"Standard pointstore item configuration save function.";s:5:"flags";a:0:{}}s:4:"info";a:6:{s:8:"filename";s:43:"sources/hooks/modules/pointstore/custom.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:49:"Standard pointstore item initialisation function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"The "shop fronts"";}}s:6:"action";a:6:{s:8:"filename";s:43:"sources/hooks/modules/pointstore/custom.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"action";s:11:"description";s:53:"Standard interface stage of pointstore item purchase.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:11:"action_done";a:6:{s:8:"filename";s:43:"sources/hooks/modules/pointstore/custom.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"action_done";s:11:"description";s:57:"Standard actualisation stage of pointstore item purchase.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:22:"Hook_pointstore_custom";s:7:"comment";b:1;}s:26:"Hook_pointstore_forwarding";a:3:{s:9:"functions";a:9:{s:4:"init";a:5:{s:8:"filename";s:47:"sources/hooks/modules/pointstore/forwarding.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"init";s:11:"description";s:49:"Standard pointstore item initialisation function.";s:5:"flags";a:0:{}}s:4:"info";a:6:{s:8:"filename";s:47:"sources/hooks/modules/pointstore/forwarding.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:47:"Standard pointstore item "shop front" function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"The "shop fronts"";}}s:11:"save_config";a:5:{s:8:"filename";s:47:"sources/hooks/modules/pointstore/forwarding.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"save_config";s:11:"description";s:53:"Standard pointstore item configuration save function.";s:5:"flags";a:0:{}}s:14:"_do_price_mail";a:5:{s:8:"filename";s:47:"sources/hooks/modules/pointstore/forwarding.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"_do_price_mail";s:11:"description";s:100:"Update an e-mail address from what was chosen in an interface; update or delete each price/cost/item";s:5:"flags";a:0:{}}s:10:"get_fields";a:6:{s:8:"filename";s:47:"sources/hooks/modules/pointstore/forwarding.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"get_fields";s:11:"description";s:43:"Get fields for adding/editing one of these.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:10:"The fields";}}s:6:"config";a:6:{s:8:"filename";s:47:"sources/hooks/modules/pointstore/forwarding.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"config";s:11:"description";s:48:"Standard pointstore item configuration function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:96:"A tuple: list of [fields to shown, hidden fields], title for add form, add form (null: disabled)";}}s:13:"newforwarding";a:6:{s:8:"filename";s:47:"sources/hooks/modules/pointstore/forwarding.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"newforwarding";s:11:"description";s:43:"Standard stage of pointstore item purchase.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:14:"_newforwarding";a:6:{s:8:"filename";s:47:"sources/hooks/modules/pointstore/forwarding.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"_newforwarding";s:11:"description";s:43:"Standard stage of pointstore item purchase.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:15:"__newforwarding";a:6:{s:8:"filename";s:47:"sources/hooks/modules/pointstore/forwarding.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"__newforwarding";s:11:"description";s:43:"Standard stage of pointstore item purchase.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:26:"Hook_pointstore_forwarding";s:7:"comment";b:1;}s:24:"Hook_pointstore_gambling";a:3:{s:9:"functions";a:4:{s:4:"init";a:5:{s:8:"filename";s:45:"sources/hooks/modules/pointstore/gambling.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"init";s:11:"description";s:49:"Standard pointstore item initialisation function.";s:5:"flags";a:0:{}}s:4:"info";a:6:{s:8:"filename";s:45:"sources/hooks/modules/pointstore/gambling.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:49:"Standard pointstore item initialisation function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"The "shop fronts"";}}s:6:"action";a:6:{s:8:"filename";s:45:"sources/hooks/modules/pointstore/gambling.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"action";s:11:"description";s:53:"Standard interface stage of pointstore item purchase.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:11:"action_done";a:6:{s:8:"filename";s:45:"sources/hooks/modules/pointstore/gambling.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"action_done";s:11:"description";s:57:"Standard actualisation stage of pointstore item purchase.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:24:"Hook_pointstore_gambling";s:7:"comment";b:1;}s:30:"Hook_pointstore_highlight_name";a:3:{s:9:"functions";a:4:{s:4:"init";a:5:{s:8:"filename";s:51:"sources/hooks/modules/pointstore/highlight_name.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"init";s:11:"description";s:49:"Standard pointstore item initialisation function.";s:5:"flags";a:0:{}}s:4:"info";a:6:{s:8:"filename";s:51:"sources/hooks/modules/pointstore/highlight_name.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:49:"Standard pointstore item initialisation function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"The "shop fronts"";}}s:6:"action";a:6:{s:8:"filename";s:51:"sources/hooks/modules/pointstore/highlight_name.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"action";s:11:"description";s:53:"Standard interface stage of pointstore item purchase.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:11:"action_done";a:6:{s:8:"filename";s:51:"sources/hooks/modules/pointstore/highlight_name.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"action_done";s:11:"description";s:57:"Standard actualisation stage of pointstore item purchase.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:30:"Hook_pointstore_highlight_name";s:7:"comment";b:1;}s:26:"Hook_pointstore_permission";a:3:{s:9:"functions";a:9:{s:4:"init";a:5:{s:8:"filename";s:47:"sources/hooks/modules/pointstore/permission.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"init";s:11:"description";s:49:"Standard pointstore item initialisation function.";s:5:"flags";a:0:{}}s:10:"get_fields";a:6:{s:8:"filename";s:47:"sources/hooks/modules/pointstore/permission.php";s:10:"parameters";a:14:{i:0;a:7:{s:4:"name";s:11:"name_suffix";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:44:"What to place onto the end of the field name";s:11:"phpdoc_name";s:11:"name_suffix";}i:1;a:7:{s:4:"name";s:5:"title";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:5:"Title";s:11:"phpdoc_name";s:5:"title";}i:2;a:7:{s:4:"name";s:11:"description";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:11:"Description";s:11:"phpdoc_name";s:11:"description";}i:3;a:7:{s:4:"name";s:7:"enabled";s:7:"default";i:1;s:11:"default_raw";s:1:"1";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:21:"Whether it is enabled";s:11:"phpdoc_name";s:7:"enabled";}i:4;a:7:{s:4:"name";s:4:"cost";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:34:"The cost in points (null: not set)";s:11:"phpdoc_name";s:4:"cost";}i:5;a:7:{s:4:"name";s:5:"hours";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:52:"Number of hours for it to last for (null: unlimited)";s:11:"phpdoc_name";s:5:"hours";}i:6;a:7:{s:4:"name";s:4:"type";s:7:"default";s:17:"member_privileges";s:11:"default_raw";s:19:"'member_privileges'";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"Permission scope 'type'";s:11:"phpdoc_name";s:4:"type";}i:7;a:7:{s:4:"name";s:9:"privilege";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:28:"Permission scope 'privilege'";s:11:"phpdoc_name";s:9:"privilege";}i:8;a:7:{s:4:"name";s:4:"zone";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"Permission scope 'zone'";s:11:"phpdoc_name";s:4:"zone";}i:9;a:7:{s:4:"name";s:4:"page";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:23:"Permission scope 'page'";s:11:"phpdoc_name";s:4:"page";}i:10;a:7:{s:4:"name";s:6:"module";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:25:"Permission scope 'module'";s:11:"phpdoc_name";s:6:"module";}i:11;a:7:{s:4:"name";s:8:"category";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:27:"Permission scope 'category'";s:11:"phpdoc_name";s:8:"category";}i:12;a:7:{s:4:"name";s:12:"mail_subject";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:25:"Confirmation mail subject";s:11:"phpdoc_name";s:12:"mail_subject";}i:13;a:7:{s:4:"name";s:9:"mail_body";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:9:"LONG_TEXT";s:11:"description";s:22:"Confirmation mail body";s:11:"phpdoc_name";s:9:"mail_body";}}s:4:"name";s:10:"get_fields";s:11:"description";s:43:"Get fields for adding/editing one of these.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:10:"The fields";}}s:6:"config";a:6:{s:8:"filename";s:47:"sources/hooks/modules/pointstore/permission.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"config";s:11:"description";s:48:"Standard pointstore item configuration function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:96:"A tuple: list of [fields to shown, hidden fields], title for add form, add form (null: disabled)";}}s:11:"save_config";a:5:{s:8:"filename";s:47:"sources/hooks/modules/pointstore/permission.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"save_config";s:11:"description";s:53:"Standard pointstore item configuration save function.";s:5:"flags";a:0:{}}s:4:"info";a:6:{s:8:"filename";s:47:"sources/hooks/modules/pointstore/permission.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:49:"Standard pointstore item initialisation function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"The "shop fronts"";}}s:6:"action";a:6:{s:8:"filename";s:47:"sources/hooks/modules/pointstore/permission.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"action";s:11:"description";s:53:"Standard interface stage of pointstore item purchase.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:11:"action_done";a:6:{s:8:"filename";s:47:"sources/hooks/modules/pointstore/permission.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"action_done";s:11:"description";s:57:"Standard actualisation stage of pointstore item purchase.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:7:"get_map";a:6:{s:8:"filename";s:47:"sources/hooks/modules/pointstore/permission.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"row";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:15:"Map row of item";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:7:"get_map";s:11:"description";s:42:"Get a database map for our permission row.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:18:"Permission map row";}}s:6:"bought";a:6:{s:8:"filename";s:47:"sources/hooks/modules/pointstore/permission.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"row";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:7:"Map row";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:6:"bought";s:11:"description";s:57:"Standard actualisation stage of pointstore item purchase.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"boolean";s:11:"description";s:48:"Whether the current member has bought it already";}}}s:4:"name";s:26:"Hook_pointstore_permission";s:7:"comment";b:1;}s:20:"Hook_pointstore_pop3";a:3:{s:9:"functions";a:12:{s:4:"init";a:5:{s:8:"filename";s:41:"sources/hooks/modules/pointstore/pop3.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"init";s:11:"description";s:49:"Standard pointstore item initialisation function.";s:5:"flags";a:0:{}}s:4:"info";a:6:{s:8:"filename";s:41:"sources/hooks/modules/pointstore/pop3.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:47:"Standard pointstore item "shop front" function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"The "shop fronts"";}}s:11:"save_config";a:5:{s:8:"filename";s:41:"sources/hooks/modules/pointstore/pop3.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"save_config";s:11:"description";s:53:"Standard pointstore item configuration save function.";s:5:"flags";a:0:{}}s:14:"_do_price_mail";a:5:{s:8:"filename";s:41:"sources/hooks/modules/pointstore/pop3.php";s:10:"parameters";a:0:{}s:4:"name";s:14:"_do_price_mail";s:11:"description";s:100:"Update an e-mail address from what was chosen in an interface; update or delete each price/cost/item";s:5:"flags";a:0:{}}s:10:"get_fields";a:6:{s:8:"filename";s:41:"sources/hooks/modules/pointstore/pop3.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"get_fields";s:11:"description";s:43:"Get fields for adding/editing one of these.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:10:"The fields";}}s:6:"config";a:6:{s:8:"filename";s:41:"sources/hooks/modules/pointstore/pop3.php";s:10:"parameters";a:0:{}s:4:"name";s:6:"config";s:11:"description";s:48:"Standard pointstore item configuration function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:96:"A tuple: list of [fields to shown, hidden fields], title for add form, add form (null: disabled)";}}s:8:"pop3info";a:6:{s:8:"filename";s:41:"sources/hooks/modules/pointstore/pop3.php";s:10:"parameters";a:0:{}s:4:"name";s:8:"pop3info";s:11:"description";s:34:"Standard pointstore introspection.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:7:"newpop3";a:6:{s:8:"filename";s:41:"sources/hooks/modules/pointstore/pop3.php";s:10:"parameters";a:0:{}s:4:"name";s:7:"newpop3";s:11:"description";s:43:"Standard stage of pointstore item purchase.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:8:"_newpop3";a:6:{s:8:"filename";s:41:"sources/hooks/modules/pointstore/pop3.php";s:10:"parameters";a:0:{}s:4:"name";s:8:"_newpop3";s:11:"description";s:43:"Standard stage of pointstore item purchase.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:9:"__newpop3";a:6:{s:8:"filename";s:41:"sources/hooks/modules/pointstore/pop3.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"__newpop3";s:11:"description";s:43:"Standard stage of pointstore item purchase.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:8:"buyquota";a:6:{s:8:"filename";s:41:"sources/hooks/modules/pointstore/pop3.php";s:10:"parameters";a:0:{}s:4:"name";s:8:"buyquota";s:11:"description";s:43:"Standard stage of pointstore item purchase.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:9:"_buyquota";a:6:{s:8:"filename";s:41:"sources/hooks/modules/pointstore/pop3.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"_buyquota";s:11:"description";s:43:"Standard stage of pointstore item purchase.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:20:"Hook_pointstore_pop3";s:7:"comment";b:1;}s:25:"Hook_pointstore_topic_pin";a:3:{s:9:"functions";a:5:{s:4:"init";a:5:{s:8:"filename";s:46:"sources/hooks/modules/pointstore/topic_pin.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"init";s:11:"description";s:49:"Standard pointstore item initialisation function.";s:5:"flags";a:0:{}}s:4:"info";a:6:{s:8:"filename";s:46:"sources/hooks/modules/pointstore/topic_pin.php";s:10:"parameters";a:0:{}s:4:"name";s:4:"info";s:11:"description";s:47:"Standard pointstore item "shop front" function.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"The "shop fronts"";}}s:10:"_topic_pin";a:6:{s:8:"filename";s:46:"sources/hooks/modules/pointstore/topic_pin.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"_topic_pin";s:11:"description";s:43:"Standard stage of pointstore item purchase.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:11:"__topic_pin";a:6:{s:8:"filename";s:46:"sources/hooks/modules/pointstore/topic_pin.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"__topic_pin";s:11:"description";s:43:"Standard stage of pointstore item purchase.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}s:12:"___topic_pin";a:6:{s:8:"filename";s:46:"sources/hooks/modules/pointstore/topic_pin.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"___topic_pin";s:11:"description";s:43:"Standard stage of pointstore item purchase.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:6:"The UI";}}}s:4:"name";s:25:"Hook_pointstore_topic_pin";s:7:"comment";b:1;}s:20:"Hook_search_calendar";a:3:{s:9:"functions";a:4:{s:4:"info";a:6:{s:8:"filename";s:41:"sources/hooks/modules/search/calendar.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:17:"check_permissions";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:17:"check_permissions";}}s:4:"name";s:4:"info";s:11:"description";s:34:"Find details for this search hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Map of search hook details (null: hook is disabled).";}}s:10:"get_fields";a:6:{s:8:"filename";s:41:"sources/hooks/modules/search/calendar.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"get_fields";s:11:"description";s:38:"Get a list of extra fields to ask for.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:38:"A list of maps specifying extra fields";}}s:3:"run";a:6:{s:8:"filename";s:41:"sources/hooks/modules/search/calendar.php";s:10:"parameters";a:16:{i:0;a:5:{s:4:"name";s:7:"content";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"Search string";s:11:"phpdoc_name";s:7:"content";}i:1;a:5:{s:4:"name";s:16:"only_search_meta";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:39:"Whether to only do a META (tags) search";s:11:"phpdoc_name";s:16:"only_search_meta";}i:2;a:5:{s:4:"name";s:9:"direction";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"Order direction";s:11:"phpdoc_name";s:9:"direction";}i:3;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:31:"Start position in total results";s:11:"phpdoc_name";s:3:"max";}i:4;a:5:{s:4:"name";s:5:"start";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:34:"Maximum results to return in total";s:11:"phpdoc_name";s:5:"start";}i:5;a:5:{s:4:"name";s:11:"only_titles";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:69:"Whether only to search titles (as opposed to both titles and content)";s:11:"phpdoc_name";s:11:"only_titles";}i:6;a:5:{s:4:"name";s:13:"content_where";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:120:"Where clause that selects the content according to the main search string (SQL query fragment) (blank: full-text search)";s:11:"phpdoc_name";s:13:"content_where";}i:7;a:5:{s:4:"name";s:6:"author";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:28:"Username/Author to match for";s:11:"phpdoc_name";s:6:"author";}i:8;a:5:{s:4:"name";s:9:"author_id";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:38:"Member-ID to match for (null: unknown)";s:11:"phpdoc_name";s:9:"author_id";}i:9;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:51:"Cutoff date (TIME or a pair representing the range)";s:11:"phpdoc_name";s:6:"cutoff";}i:10;a:6:{s:4:"name";s:4:"sort";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:57:"The sort type (gets remapped to a field in this function)";s:11:"phpdoc_name";s:4:"sort";s:3:"set";s:14:"title add_date";}i:11;a:5:{s:4:"name";s:8:"limit_to";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:31:"Limit to this number of results";s:11:"phpdoc_name";s:8:"limit_to";}i:12;a:6:{s:4:"name";s:16:"boolean_operator";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:33:"What kind of boolean search to do";s:11:"phpdoc_name";s:16:"boolean_operator";s:3:"set";s:6:"or and";}i:13;a:5:{s:4:"name";s:12:"where_clause";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:68:"Where constraints known by the main search code (SQL query fragment)";s:11:"phpdoc_name";s:12:"where_clause";}i:14;a:5:{s:4:"name";s:12:"search_under";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:50:"Comma-separated list of categories to search under";s:11:"phpdoc_name";s:12:"search_under";}i:15;a:5:{s:4:"name";s:14:"boolean_search";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether it is a boolean search";s:11:"phpdoc_name";s:14:"boolean_search";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for search results.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:32:"List of maps (template, orderer)";}}s:6:"render";a:6:{s:8:"filename";s:41:"sources/hooks/modules/search/calendar.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"row";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:48:"The data row stored when we retrieved the result";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:6:"render";s:11:"description";s:43:"Run function for rendering a search result.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:10:"The output";}}}s:4:"name";s:20:"Hook_search_calendar";s:7:"comment";b:1;}s:32:"Hook_search_catalogue_categories";a:3:{s:9:"functions";a:3:{s:4:"info";a:6:{s:8:"filename";s:53:"sources/hooks/modules/search/catalogue_categories.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:17:"check_permissions";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:17:"check_permissions";}}s:4:"name";s:4:"info";s:11:"description";s:34:"Find details for this search hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Map of search hook details (null: hook is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:53:"sources/hooks/modules/search/catalogue_categories.php";s:10:"parameters";a:16:{i:0;a:5:{s:4:"name";s:7:"content";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"Search string";s:11:"phpdoc_name";s:7:"content";}i:1;a:5:{s:4:"name";s:16:"only_search_meta";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:39:"Whether to only do a META (tags) search";s:11:"phpdoc_name";s:16:"only_search_meta";}i:2;a:5:{s:4:"name";s:9:"direction";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"Order direction";s:11:"phpdoc_name";s:9:"direction";}i:3;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:31:"Start position in total results";s:11:"phpdoc_name";s:3:"max";}i:4;a:5:{s:4:"name";s:5:"start";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:34:"Maximum results to return in total";s:11:"phpdoc_name";s:5:"start";}i:5;a:5:{s:4:"name";s:11:"only_titles";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:69:"Whether only to search titles (as opposed to both titles and content)";s:11:"phpdoc_name";s:11:"only_titles";}i:6;a:5:{s:4:"name";s:13:"content_where";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:120:"Where clause that selects the content according to the main search string (SQL query fragment) (blank: full-text search)";s:11:"phpdoc_name";s:13:"content_where";}i:7;a:5:{s:4:"name";s:6:"author";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:28:"Username/Author to match for";s:11:"phpdoc_name";s:6:"author";}i:8;a:5:{s:4:"name";s:9:"author_id";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:38:"Member-ID to match for (null: unknown)";s:11:"phpdoc_name";s:9:"author_id";}i:9;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:51:"Cutoff date (TIME or a pair representing the range)";s:11:"phpdoc_name";s:6:"cutoff";}i:10;a:6:{s:4:"name";s:4:"sort";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:57:"The sort type (gets remapped to a field in this function)";s:11:"phpdoc_name";s:4:"sort";s:3:"set";s:14:"title add_date";}i:11;a:5:{s:4:"name";s:8:"limit_to";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:31:"Limit to this number of results";s:11:"phpdoc_name";s:8:"limit_to";}i:12;a:6:{s:4:"name";s:16:"boolean_operator";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:33:"What kind of boolean search to do";s:11:"phpdoc_name";s:16:"boolean_operator";s:3:"set";s:6:"or and";}i:13;a:5:{s:4:"name";s:12:"where_clause";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:68:"Where constraints known by the main search code (SQL query fragment)";s:11:"phpdoc_name";s:12:"where_clause";}i:14;a:5:{s:4:"name";s:12:"search_under";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:50:"Comma-separated list of categories to search under";s:11:"phpdoc_name";s:12:"search_under";}i:15;a:5:{s:4:"name";s:14:"boolean_search";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether it is a boolean search";s:11:"phpdoc_name";s:14:"boolean_search";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for search results.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:32:"List of maps (template, orderer)";}}s:6:"render";a:6:{s:8:"filename";s:53:"sources/hooks/modules/search/catalogue_categories.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"row";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:48:"The data row stored when we retrieved the result";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:6:"render";s:11:"description";s:43:"Run function for rendering a search result.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:10:"The output";}}}s:4:"name";s:32:"Hook_search_catalogue_categories";s:7:"comment";b:1;}s:29:"Hook_search_catalogue_entries";a:3:{s:9:"functions";a:5:{s:4:"info";a:6:{s:8:"filename";s:50:"sources/hooks/modules/search/catalogue_entries.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:17:"check_permissions";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:17:"check_permissions";}}s:4:"name";s:4:"info";s:11:"description";s:34:"Find details for this search hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Map of search hook details (null: hook is disabled).";}}s:9:"ajax_tree";a:6:{s:8:"filename";s:50:"sources/hooks/modules/search/catalogue_entries.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"ajax_tree";s:11:"description";s:89:"Get details for an ajax-tree-list of entries for the content covered by this search hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"mixed";s:11:"description";s:78:"Either Tempcode of a full screen to show, or a pair: the hook, and the options";}}s:10:"get_fields";a:6:{s:8:"filename";s:50:"sources/hooks/modules/search/catalogue_entries.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"get_fields";s:11:"description";s:38:"Get a list of extra fields to ask for.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:38:"A list of maps specifying extra fields";}}s:3:"run";a:6:{s:8:"filename";s:50:"sources/hooks/modules/search/catalogue_entries.php";s:10:"parameters";a:16:{i:0;a:5:{s:4:"name";s:7:"content";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"Search string";s:11:"phpdoc_name";s:7:"content";}i:1;a:5:{s:4:"name";s:16:"only_search_meta";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:39:"Whether to only do a META (tags) search";s:11:"phpdoc_name";s:16:"only_search_meta";}i:2;a:5:{s:4:"name";s:9:"direction";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"Order direction";s:11:"phpdoc_name";s:9:"direction";}i:3;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:31:"Start position in total results";s:11:"phpdoc_name";s:3:"max";}i:4;a:5:{s:4:"name";s:5:"start";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:34:"Maximum results to return in total";s:11:"phpdoc_name";s:5:"start";}i:5;a:5:{s:4:"name";s:11:"only_titles";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:69:"Whether only to search titles (as opposed to both titles and content)";s:11:"phpdoc_name";s:11:"only_titles";}i:6;a:5:{s:4:"name";s:13:"content_where";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:120:"Where clause that selects the content according to the main search string (SQL query fragment) (blank: full-text search)";s:11:"phpdoc_name";s:13:"content_where";}i:7;a:5:{s:4:"name";s:6:"author";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:28:"Username/Author to match for";s:11:"phpdoc_name";s:6:"author";}i:8;a:5:{s:4:"name";s:9:"author_id";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:38:"Member-ID to match for (null: unknown)";s:11:"phpdoc_name";s:9:"author_id";}i:9;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:51:"Cutoff date (TIME or a pair representing the range)";s:11:"phpdoc_name";s:6:"cutoff";}i:10;a:6:{s:4:"name";s:4:"sort";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:57:"The sort type (gets remapped to a field in this function)";s:11:"phpdoc_name";s:4:"sort";s:3:"set";s:14:"title add_date";}i:11;a:5:{s:4:"name";s:8:"limit_to";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:31:"Limit to this number of results";s:11:"phpdoc_name";s:8:"limit_to";}i:12;a:6:{s:4:"name";s:16:"boolean_operator";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:33:"What kind of boolean search to do";s:11:"phpdoc_name";s:16:"boolean_operator";s:3:"set";s:6:"or and";}i:13;a:5:{s:4:"name";s:12:"where_clause";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:68:"Where constraints known by the main search code (SQL query fragment)";s:11:"phpdoc_name";s:12:"where_clause";}i:14;a:5:{s:4:"name";s:12:"search_under";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:50:"Comma-separated list of categories to search under";s:11:"phpdoc_name";s:12:"search_under";}i:15;a:5:{s:4:"name";s:14:"boolean_search";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether it is a boolean search";s:11:"phpdoc_name";s:14:"boolean_search";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for search results.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:32:"List of maps (template, orderer)";}}s:6:"render";a:6:{s:8:"filename";s:50:"sources/hooks/modules/search/catalogue_entries.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"row";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:48:"The data row stored when we retrieved the result";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:6:"render";s:11:"description";s:43:"Run function for rendering a search result.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:9:"?Tempcode";s:11:"description";s:34:"The output (null: compound output)";}}}s:4:"name";s:29:"Hook_search_catalogue_entries";s:7:"comment";b:1;}s:21:"Hook_search_cns_clubs";a:3:{s:9:"functions";a:4:{s:4:"info";a:6:{s:8:"filename";s:42:"sources/hooks/modules/search/cns_clubs.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:17:"check_permissions";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:17:"check_permissions";}}s:4:"name";s:4:"info";s:11:"description";s:34:"Find details for this search hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Map of search hook details (null: hook is disabled).";}}s:10:"get_fields";a:6:{s:8:"filename";s:42:"sources/hooks/modules/search/cns_clubs.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"get_fields";s:11:"description";s:38:"Get a list of extra fields to ask for.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:38:"A list of maps specifying extra fields";}}s:3:"run";a:6:{s:8:"filename";s:42:"sources/hooks/modules/search/cns_clubs.php";s:10:"parameters";a:16:{i:0;a:5:{s:4:"name";s:7:"content";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"Search string";s:11:"phpdoc_name";s:7:"content";}i:1;a:5:{s:4:"name";s:16:"only_search_meta";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:39:"Whether to only do a META (tags) search";s:11:"phpdoc_name";s:16:"only_search_meta";}i:2;a:5:{s:4:"name";s:9:"direction";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"Order direction";s:11:"phpdoc_name";s:9:"direction";}i:3;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:31:"Start position in total results";s:11:"phpdoc_name";s:3:"max";}i:4;a:5:{s:4:"name";s:5:"start";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:34:"Maximum results to return in total";s:11:"phpdoc_name";s:5:"start";}i:5;a:5:{s:4:"name";s:11:"only_titles";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:69:"Whether only to search titles (as opposed to both titles and content)";s:11:"phpdoc_name";s:11:"only_titles";}i:6;a:5:{s:4:"name";s:13:"content_where";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:120:"Where clause that selects the content according to the main search string (SQL query fragment) (blank: full-text search)";s:11:"phpdoc_name";s:13:"content_where";}i:7;a:5:{s:4:"name";s:6:"author";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:28:"Username/Author to match for";s:11:"phpdoc_name";s:6:"author";}i:8;a:5:{s:4:"name";s:9:"author_id";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:38:"Member-ID to match for (null: unknown)";s:11:"phpdoc_name";s:9:"author_id";}i:9;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:51:"Cutoff date (TIME or a pair representing the range)";s:11:"phpdoc_name";s:6:"cutoff";}i:10;a:6:{s:4:"name";s:4:"sort";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:57:"The sort type (gets remapped to a field in this function)";s:11:"phpdoc_name";s:4:"sort";s:3:"set";s:14:"title add_date";}i:11;a:5:{s:4:"name";s:8:"limit_to";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:31:"Limit to this number of results";s:11:"phpdoc_name";s:8:"limit_to";}i:12;a:6:{s:4:"name";s:16:"boolean_operator";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:33:"What kind of boolean search to do";s:11:"phpdoc_name";s:16:"boolean_operator";s:3:"set";s:6:"or and";}i:13;a:5:{s:4:"name";s:12:"where_clause";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:68:"Where constraints known by the main search code (SQL query fragment)";s:11:"phpdoc_name";s:12:"where_clause";}i:14;a:5:{s:4:"name";s:12:"search_under";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:50:"Comma-separated list of categories to search under";s:11:"phpdoc_name";s:12:"search_under";}i:15;a:5:{s:4:"name";s:14:"boolean_search";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether it is a boolean search";s:11:"phpdoc_name";s:14:"boolean_search";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for search results.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:32:"List of maps (template, orderer)";}}s:6:"render";a:6:{s:8:"filename";s:42:"sources/hooks/modules/search/cns_clubs.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"row";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:48:"The data row stored when we retrieved the result";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:6:"render";s:11:"description";s:43:"Run function for rendering a search result.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:10:"The output";}}}s:4:"name";s:21:"Hook_search_cns_clubs";s:7:"comment";b:1;}s:23:"Hook_search_cns_members";a:3:{s:9:"functions";a:4:{s:4:"info";a:6:{s:8:"filename";s:44:"sources/hooks/modules/search/cns_members.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:17:"check_permissions";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:17:"check_permissions";}}s:4:"name";s:4:"info";s:11:"description";s:34:"Find details for this search hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Map of search hook details (null: hook is disabled).";}}s:10:"get_fields";a:6:{s:8:"filename";s:44:"sources/hooks/modules/search/cns_members.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"get_fields";s:11:"description";s:38:"Get a list of extra fields to ask for.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:38:"A list of maps specifying extra fields";}}s:3:"run";a:6:{s:8:"filename";s:44:"sources/hooks/modules/search/cns_members.php";s:10:"parameters";a:16:{i:0;a:5:{s:4:"name";s:7:"content";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"Search string";s:11:"phpdoc_name";s:7:"content";}i:1;a:5:{s:4:"name";s:16:"only_search_meta";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:39:"Whether to only do a META (tags) search";s:11:"phpdoc_name";s:16:"only_search_meta";}i:2;a:5:{s:4:"name";s:9:"direction";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"Order direction";s:11:"phpdoc_name";s:9:"direction";}i:3;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:31:"Start position in total results";s:11:"phpdoc_name";s:3:"max";}i:4;a:5:{s:4:"name";s:5:"start";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:34:"Maximum results to return in total";s:11:"phpdoc_name";s:5:"start";}i:5;a:5:{s:4:"name";s:11:"only_titles";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:69:"Whether only to search titles (as opposed to both titles and content)";s:11:"phpdoc_name";s:11:"only_titles";}i:6;a:5:{s:4:"name";s:13:"content_where";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:120:"Where clause that selects the content according to the main search string (SQL query fragment) (blank: full-text search)";s:11:"phpdoc_name";s:13:"content_where";}i:7;a:5:{s:4:"name";s:6:"author";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:28:"Username/Author to match for";s:11:"phpdoc_name";s:6:"author";}i:8;a:5:{s:4:"name";s:9:"author_id";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:38:"Member-ID to match for (null: unknown)";s:11:"phpdoc_name";s:9:"author_id";}i:9;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:51:"Cutoff date (TIME or a pair representing the range)";s:11:"phpdoc_name";s:6:"cutoff";}i:10;a:6:{s:4:"name";s:4:"sort";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:57:"The sort type (gets remapped to a field in this function)";s:11:"phpdoc_name";s:4:"sort";s:3:"set";s:14:"title add_date";}i:11;a:5:{s:4:"name";s:8:"limit_to";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:31:"Limit to this number of results";s:11:"phpdoc_name";s:8:"limit_to";}i:12;a:6:{s:4:"name";s:16:"boolean_operator";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:33:"What kind of boolean search to do";s:11:"phpdoc_name";s:16:"boolean_operator";s:3:"set";s:6:"or and";}i:13;a:5:{s:4:"name";s:12:"where_clause";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:68:"Where constraints known by the main search code (SQL query fragment)";s:11:"phpdoc_name";s:12:"where_clause";}i:14;a:5:{s:4:"name";s:12:"search_under";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:50:"Comma-separated list of categories to search under";s:11:"phpdoc_name";s:12:"search_under";}i:15;a:5:{s:4:"name";s:14:"boolean_search";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether it is a boolean search";s:11:"phpdoc_name";s:14:"boolean_search";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for search results.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:32:"List of maps (template, orderer)";}}s:6:"render";a:6:{s:8:"filename";s:44:"sources/hooks/modules/search/cns_members.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"row";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:48:"The data row stored when we retrieved the result";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:6:"render";s:11:"description";s:43:"Run function for rendering a search result.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:10:"The output";}}}s:4:"name";s:23:"Hook_search_cns_members";s:7:"comment";b:1;}s:22:"Hook_search_cns_own_pt";a:3:{s:9:"functions";a:3:{s:4:"info";a:6:{s:8:"filename";s:43:"sources/hooks/modules/search/cns_own_pt.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:17:"check_permissions";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:17:"check_permissions";}}s:4:"name";s:4:"info";s:11:"description";s:34:"Find details for this search hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Map of search hook details (null: hook is disabled).";}}s:3:"run";a:6:{s:8:"filename";s:43:"sources/hooks/modules/search/cns_own_pt.php";s:10:"parameters";a:16:{i:0;a:5:{s:4:"name";s:7:"content";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"Search string";s:11:"phpdoc_name";s:7:"content";}i:1;a:5:{s:4:"name";s:16:"only_search_meta";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:39:"Whether to only do a META (tags) search";s:11:"phpdoc_name";s:16:"only_search_meta";}i:2;a:5:{s:4:"name";s:9:"direction";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"Order direction";s:11:"phpdoc_name";s:9:"direction";}i:3;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:31:"Start position in total results";s:11:"phpdoc_name";s:3:"max";}i:4;a:5:{s:4:"name";s:5:"start";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:34:"Maximum results to return in total";s:11:"phpdoc_name";s:5:"start";}i:5;a:5:{s:4:"name";s:11:"only_titles";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:69:"Whether only to search titles (as opposed to both titles and content)";s:11:"phpdoc_name";s:11:"only_titles";}i:6;a:5:{s:4:"name";s:13:"content_where";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:120:"Where clause that selects the content according to the main search string (SQL query fragment) (blank: full-text search)";s:11:"phpdoc_name";s:13:"content_where";}i:7;a:5:{s:4:"name";s:6:"author";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:28:"Username/Author to match for";s:11:"phpdoc_name";s:6:"author";}i:8;a:5:{s:4:"name";s:9:"author_id";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:38:"Member-ID to match for (null: unknown)";s:11:"phpdoc_name";s:9:"author_id";}i:9;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:51:"Cutoff date (TIME or a pair representing the range)";s:11:"phpdoc_name";s:6:"cutoff";}i:10;a:6:{s:4:"name";s:4:"sort";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:57:"The sort type (gets remapped to a field in this function)";s:11:"phpdoc_name";s:4:"sort";s:3:"set";s:14:"title add_date";}i:11;a:5:{s:4:"name";s:8:"limit_to";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:31:"Limit to this number of results";s:11:"phpdoc_name";s:8:"limit_to";}i:12;a:6:{s:4:"name";s:16:"boolean_operator";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:33:"What kind of boolean search to do";s:11:"phpdoc_name";s:16:"boolean_operator";s:3:"set";s:6:"or and";}i:13;a:5:{s:4:"name";s:12:"where_clause";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:68:"Where constraints known by the main search code (SQL query fragment)";s:11:"phpdoc_name";s:12:"where_clause";}i:14;a:5:{s:4:"name";s:12:"search_under";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:50:"Comma-separated list of categories to search under";s:11:"phpdoc_name";s:12:"search_under";}i:15;a:5:{s:4:"name";s:14:"boolean_search";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether it is a boolean search";s:11:"phpdoc_name";s:14:"boolean_search";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for search results.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:32:"List of maps (template, orderer)";}}s:6:"render";a:6:{s:8:"filename";s:43:"sources/hooks/modules/search/cns_own_pt.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"row";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:48:"The data row stored when we retrieved the result";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:6:"render";s:11:"description";s:43:"Run function for rendering a search result.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:10:"The output";}}}s:4:"name";s:22:"Hook_search_cns_own_pt";s:7:"comment";b:1;}s:21:"Hook_search_cns_posts";a:3:{s:9:"functions";a:5:{s:4:"info";a:6:{s:8:"filename";s:42:"sources/hooks/modules/search/cns_posts.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:17:"check_permissions";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:17:"check_permissions";}}s:4:"name";s:4:"info";s:11:"description";s:34:"Find details for this search hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Map of search hook details (null: hook is disabled).";}}s:9:"ajax_tree";a:6:{s:8:"filename";s:42:"sources/hooks/modules/search/cns_posts.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"ajax_tree";s:11:"description";s:89:"Get details for an ajax-tree-list of entries for the content covered by this search hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:33:"A pair: the hook, and the options";}}s:10:"get_fields";a:6:{s:8:"filename";s:42:"sources/hooks/modules/search/cns_posts.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"get_fields";s:11:"description";s:38:"Get a list of extra fields to ask for.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:38:"A list of maps specifying extra fields";}}s:3:"run";a:6:{s:8:"filename";s:42:"sources/hooks/modules/search/cns_posts.php";s:10:"parameters";a:16:{i:0;a:5:{s:4:"name";s:7:"content";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"Search string";s:11:"phpdoc_name";s:7:"content";}i:1;a:5:{s:4:"name";s:16:"only_search_meta";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:39:"Whether to only do a META (tags) search";s:11:"phpdoc_name";s:16:"only_search_meta";}i:2;a:5:{s:4:"name";s:9:"direction";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"Order direction";s:11:"phpdoc_name";s:9:"direction";}i:3;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:31:"Start position in total results";s:11:"phpdoc_name";s:3:"max";}i:4;a:5:{s:4:"name";s:5:"start";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:34:"Maximum results to return in total";s:11:"phpdoc_name";s:5:"start";}i:5;a:5:{s:4:"name";s:11:"only_titles";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:69:"Whether only to search titles (as opposed to both titles and content)";s:11:"phpdoc_name";s:11:"only_titles";}i:6;a:5:{s:4:"name";s:13:"content_where";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:120:"Where clause that selects the content according to the main search string (SQL query fragment) (blank: full-text search)";s:11:"phpdoc_name";s:13:"content_where";}i:7;a:5:{s:4:"name";s:6:"author";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:28:"Username/Author to match for";s:11:"phpdoc_name";s:6:"author";}i:8;a:5:{s:4:"name";s:9:"author_id";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:38:"Member-ID to match for (null: unknown)";s:11:"phpdoc_name";s:9:"author_id";}i:9;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:51:"Cutoff date (TIME or a pair representing the range)";s:11:"phpdoc_name";s:6:"cutoff";}i:10;a:6:{s:4:"name";s:4:"sort";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:57:"The sort type (gets remapped to a field in this function)";s:11:"phpdoc_name";s:4:"sort";s:3:"set";s:14:"title add_date";}i:11;a:5:{s:4:"name";s:8:"limit_to";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:31:"Limit to this number of results";s:11:"phpdoc_name";s:8:"limit_to";}i:12;a:6:{s:4:"name";s:16:"boolean_operator";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:33:"What kind of boolean search to do";s:11:"phpdoc_name";s:16:"boolean_operator";s:3:"set";s:6:"or and";}i:13;a:5:{s:4:"name";s:12:"where_clause";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:68:"Where constraints known by the main search code (SQL query fragment)";s:11:"phpdoc_name";s:12:"where_clause";}i:14;a:5:{s:4:"name";s:12:"search_under";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:50:"Comma-separated list of categories to search under";s:11:"phpdoc_name";s:12:"search_under";}i:15;a:5:{s:4:"name";s:14:"boolean_search";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether it is a boolean search";s:11:"phpdoc_name";s:14:"boolean_search";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for search results.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:32:"List of maps (template, orderer)";}}s:6:"render";a:6:{s:8:"filename";s:42:"sources/hooks/modules/search/cns_posts.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"row";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:48:"The data row stored when we retrieved the result";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:6:"render";s:11:"description";s:43:"Run function for rendering a search result.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:10:"The output";}}}s:4:"name";s:21:"Hook_search_cns_posts";s:7:"comment";b:1;}s:28:"Hook_search_cns_within_topic";a:3:{s:9:"functions";a:5:{s:4:"info";a:6:{s:8:"filename";s:49:"sources/hooks/modules/search/cns_within_topic.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:17:"check_permissions";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:17:"check_permissions";}}s:4:"name";s:4:"info";s:11:"description";s:34:"Find details for this search hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Map of search hook details (null: hook is disabled).";}}s:10:"get_fields";a:6:{s:8:"filename";s:49:"sources/hooks/modules/search/cns_within_topic.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"get_fields";s:11:"description";s:38:"Get a list of extra fields to ask for.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:38:"A list of maps specifying extra fields";}}s:9:"ajax_tree";a:6:{s:8:"filename";s:49:"sources/hooks/modules/search/cns_within_topic.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"ajax_tree";s:11:"description";s:89:"Get details for an ajax-tree-list of entries for the content covered by this search hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:33:"A pair: the hook, and the options";}}s:3:"run";a:6:{s:8:"filename";s:49:"sources/hooks/modules/search/cns_within_topic.php";s:10:"parameters";a:16:{i:0;a:5:{s:4:"name";s:7:"content";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"Search string";s:11:"phpdoc_name";s:7:"content";}i:1;a:5:{s:4:"name";s:16:"only_search_meta";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:39:"Whether to only do a META (tags) search";s:11:"phpdoc_name";s:16:"only_search_meta";}i:2;a:5:{s:4:"name";s:9:"direction";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"Order direction";s:11:"phpdoc_name";s:9:"direction";}i:3;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:31:"Start position in total results";s:11:"phpdoc_name";s:3:"max";}i:4;a:5:{s:4:"name";s:5:"start";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:34:"Maximum results to return in total";s:11:"phpdoc_name";s:5:"start";}i:5;a:5:{s:4:"name";s:11:"only_titles";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:69:"Whether only to search titles (as opposed to both titles and content)";s:11:"phpdoc_name";s:11:"only_titles";}i:6;a:5:{s:4:"name";s:13:"content_where";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:120:"Where clause that selects the content according to the main search string (SQL query fragment) (blank: full-text search)";s:11:"phpdoc_name";s:13:"content_where";}i:7;a:5:{s:4:"name";s:6:"author";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:28:"Username/Author to match for";s:11:"phpdoc_name";s:6:"author";}i:8;a:5:{s:4:"name";s:9:"author_id";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:38:"Member-ID to match for (null: unknown)";s:11:"phpdoc_name";s:9:"author_id";}i:9;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:51:"Cutoff date (TIME or a pair representing the range)";s:11:"phpdoc_name";s:6:"cutoff";}i:10;a:6:{s:4:"name";s:4:"sort";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:57:"The sort type (gets remapped to a field in this function)";s:11:"phpdoc_name";s:4:"sort";s:3:"set";s:14:"title add_date";}i:11;a:5:{s:4:"name";s:8:"limit_to";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:31:"Limit to this number of results";s:11:"phpdoc_name";s:8:"limit_to";}i:12;a:6:{s:4:"name";s:16:"boolean_operator";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:33:"What kind of boolean search to do";s:11:"phpdoc_name";s:16:"boolean_operator";s:3:"set";s:6:"or and";}i:13;a:5:{s:4:"name";s:12:"where_clause";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:68:"Where constraints known by the main search code (SQL query fragment)";s:11:"phpdoc_name";s:12:"where_clause";}i:14;a:5:{s:4:"name";s:12:"search_under";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:50:"Comma-separated list of categories to search under";s:11:"phpdoc_name";s:12:"search_under";}i:15;a:5:{s:4:"name";s:14:"boolean_search";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether it is a boolean search";s:11:"phpdoc_name";s:14:"boolean_search";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for search results.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:32:"List of maps (template, orderer)";}}s:6:"render";a:6:{s:8:"filename";s:49:"sources/hooks/modules/search/cns_within_topic.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"row";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:48:"The data row stored when we retrieved the result";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:6:"render";s:11:"description";s:43:"Run function for rendering a search result.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:10:"The output";}}}s:4:"name";s:28:"Hook_search_cns_within_topic";s:7:"comment";b:1;}s:25:"Hook_search_comcode_pages";a:3:{s:9:"functions";a:6:{s:4:"info";a:6:{s:8:"filename";s:46:"sources/hooks/modules/search/comcode_pages.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:17:"check_permissions";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:17:"check_permissions";}}s:4:"name";s:4:"info";s:11:"description";s:34:"Find details for this search hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Map of search hook details (null: hook is disabled).";}}s:8:"get_tree";a:6:{s:8:"filename";s:46:"sources/hooks/modules/search/comcode_pages.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"selected";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:25:"The default selected item";s:11:"phpdoc_name";s:8:"selected";}}s:4:"name";s:8:"get_tree";s:11:"description";s:105:"Get a list of entries for the content covered by this search hook. In hierarchical list selection format.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:14:"Tree structure";}}s:10:"get_fields";a:6:{s:8:"filename";s:46:"sources/hooks/modules/search/comcode_pages.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"get_fields";s:11:"description";s:38:"Get a list of extra fields to ask for.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:38:"A list of maps specifying extra fields";}}s:3:"run";a:6:{s:8:"filename";s:46:"sources/hooks/modules/search/comcode_pages.php";s:10:"parameters";a:16:{i:0;a:5:{s:4:"name";s:7:"content";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"Search string";s:11:"phpdoc_name";s:7:"content";}i:1;a:5:{s:4:"name";s:16:"only_search_meta";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:39:"Whether to only do a META (tags) search";s:11:"phpdoc_name";s:16:"only_search_meta";}i:2;a:5:{s:4:"name";s:9:"direction";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"Order direction";s:11:"phpdoc_name";s:9:"direction";}i:3;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:31:"Start position in total results";s:11:"phpdoc_name";s:3:"max";}i:4;a:5:{s:4:"name";s:5:"start";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:34:"Maximum results to return in total";s:11:"phpdoc_name";s:5:"start";}i:5;a:5:{s:4:"name";s:11:"only_titles";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:69:"Whether only to search titles (as opposed to both titles and content)";s:11:"phpdoc_name";s:11:"only_titles";}i:6;a:5:{s:4:"name";s:13:"content_where";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:120:"Where clause that selects the content according to the main search string (SQL query fragment) (blank: full-text search)";s:11:"phpdoc_name";s:13:"content_where";}i:7;a:5:{s:4:"name";s:6:"author";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:28:"Username/Author to match for";s:11:"phpdoc_name";s:6:"author";}i:8;a:5:{s:4:"name";s:9:"author_id";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:38:"Member-ID to match for (null: unknown)";s:11:"phpdoc_name";s:9:"author_id";}i:9;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:51:"Cutoff date (TIME or a pair representing the range)";s:11:"phpdoc_name";s:6:"cutoff";}i:10;a:6:{s:4:"name";s:4:"sort";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:57:"The sort type (gets remapped to a field in this function)";s:11:"phpdoc_name";s:4:"sort";s:3:"set";s:14:"title add_date";}i:11;a:5:{s:4:"name";s:8:"limit_to";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:31:"Limit to this number of results";s:11:"phpdoc_name";s:8:"limit_to";}i:12;a:6:{s:4:"name";s:16:"boolean_operator";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:33:"What kind of boolean search to do";s:11:"phpdoc_name";s:16:"boolean_operator";s:3:"set";s:6:"or and";}i:13;a:5:{s:4:"name";s:12:"where_clause";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:68:"Where constraints known by the main search code (SQL query fragment)";s:11:"phpdoc_name";s:12:"where_clause";}i:14;a:5:{s:4:"name";s:12:"search_under";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:50:"Comma-separated list of categories to search under";s:11:"phpdoc_name";s:12:"search_under";}i:15;a:5:{s:4:"name";s:14:"boolean_search";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether it is a boolean search";s:11:"phpdoc_name";s:14:"boolean_search";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for search results.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:32:"List of maps (template, orderer)";}}s:6:"render";a:6:{s:8:"filename";s:46:"sources/hooks/modules/search/comcode_pages.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"row";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:48:"The data row stored when we retrieved the result";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:6:"render";s:11:"description";s:43:"Run function for rendering a search result.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:10:"The output";}}s:15:"decide_template";a:6:{s:8:"filename";s:46:"sources/hooks/modules/search/comcode_pages.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:4:"zone";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:21:"The zone for the page";s:11:"phpdoc_name";s:4:"zone";}i:1;a:5:{s:4:"name";s:4:"page";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:13:"The page name";s:11:"phpdoc_name";s:4:"page";}i:2;a:5:{s:4:"name";s:8:"limit_to";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:69:"What search hooks the search is being limited to (blank: not limited)";s:11:"phpdoc_name";s:8:"limit_to";}}s:4:"name";s:15:"decide_template";s:11:"description";s:56:"Decide how to show a Comcode page in the search results.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:37:"The Tempcode showing the Comcode page";}}}s:4:"name";s:25:"Hook_search_comcode_pages";s:7:"comment";b:1;}s:31:"Hook_search_download_categories";a:3:{s:9:"functions";a:4:{s:4:"info";a:6:{s:8:"filename";s:52:"sources/hooks/modules/search/download_categories.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:17:"check_permissions";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:17:"check_permissions";}}s:4:"name";s:4:"info";s:11:"description";s:34:"Find details for this search hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Map of search hook details (null: hook is disabled).";}}s:10:"get_fields";a:6:{s:8:"filename";s:52:"sources/hooks/modules/search/download_categories.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"get_fields";s:11:"description";s:38:"Get a list of extra fields to ask for.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:38:"A list of maps specifying extra fields";}}s:3:"run";a:6:{s:8:"filename";s:52:"sources/hooks/modules/search/download_categories.php";s:10:"parameters";a:16:{i:0;a:5:{s:4:"name";s:7:"content";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"Search string";s:11:"phpdoc_name";s:7:"content";}i:1;a:5:{s:4:"name";s:16:"only_search_meta";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:39:"Whether to only do a META (tags) search";s:11:"phpdoc_name";s:16:"only_search_meta";}i:2;a:5:{s:4:"name";s:9:"direction";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"Order direction";s:11:"phpdoc_name";s:9:"direction";}i:3;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:31:"Start position in total results";s:11:"phpdoc_name";s:3:"max";}i:4;a:5:{s:4:"name";s:5:"start";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:34:"Maximum results to return in total";s:11:"phpdoc_name";s:5:"start";}i:5;a:5:{s:4:"name";s:11:"only_titles";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:69:"Whether only to search titles (as opposed to both titles and content)";s:11:"phpdoc_name";s:11:"only_titles";}i:6;a:5:{s:4:"name";s:13:"content_where";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:120:"Where clause that selects the content according to the main search string (SQL query fragment) (blank: full-text search)";s:11:"phpdoc_name";s:13:"content_where";}i:7;a:5:{s:4:"name";s:6:"author";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:28:"Username/Author to match for";s:11:"phpdoc_name";s:6:"author";}i:8;a:5:{s:4:"name";s:9:"author_id";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:38:"Member-ID to match for (null: unknown)";s:11:"phpdoc_name";s:9:"author_id";}i:9;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:51:"Cutoff date (TIME or a pair representing the range)";s:11:"phpdoc_name";s:6:"cutoff";}i:10;a:6:{s:4:"name";s:4:"sort";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:57:"The sort type (gets remapped to a field in this function)";s:11:"phpdoc_name";s:4:"sort";s:3:"set";s:14:"title add_date";}i:11;a:5:{s:4:"name";s:8:"limit_to";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:31:"Limit to this number of results";s:11:"phpdoc_name";s:8:"limit_to";}i:12;a:6:{s:4:"name";s:16:"boolean_operator";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:33:"What kind of boolean search to do";s:11:"phpdoc_name";s:16:"boolean_operator";s:3:"set";s:6:"or and";}i:13;a:5:{s:4:"name";s:12:"where_clause";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:68:"Where constraints known by the main search code (SQL query fragment)";s:11:"phpdoc_name";s:12:"where_clause";}i:14;a:5:{s:4:"name";s:12:"search_under";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:50:"Comma-separated list of categories to search under";s:11:"phpdoc_name";s:12:"search_under";}i:15;a:5:{s:4:"name";s:14:"boolean_search";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether it is a boolean search";s:11:"phpdoc_name";s:14:"boolean_search";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for search results.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:32:"List of maps (template, orderer)";}}s:6:"render";a:6:{s:8:"filename";s:52:"sources/hooks/modules/search/download_categories.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"row";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:48:"The data row stored when we retrieved the result";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:6:"render";s:11:"description";s:43:"Run function for rendering a search result.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:10:"The output";}}}s:4:"name";s:31:"Hook_search_download_categories";s:7:"comment";b:1;}s:21:"Hook_search_downloads";a:3:{s:9:"functions";a:5:{s:4:"info";a:6:{s:8:"filename";s:42:"sources/hooks/modules/search/downloads.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:17:"check_permissions";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:17:"check_permissions";}}s:4:"name";s:4:"info";s:11:"description";s:34:"Find details for this search hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Map of search hook details (null: hook is disabled).";}}s:9:"ajax_tree";a:6:{s:8:"filename";s:42:"sources/hooks/modules/search/downloads.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"ajax_tree";s:11:"description";s:89:"Get details for an ajax-tree-list of entries for the content covered by this search hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:33:"A pair: the hook, and the options";}}s:10:"get_fields";a:6:{s:8:"filename";s:42:"sources/hooks/modules/search/downloads.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"get_fields";s:11:"description";s:38:"Get a list of extra fields to ask for.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:38:"A list of maps specifying extra fields";}}s:3:"run";a:6:{s:8:"filename";s:42:"sources/hooks/modules/search/downloads.php";s:10:"parameters";a:16:{i:0;a:5:{s:4:"name";s:7:"content";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"Search string";s:11:"phpdoc_name";s:7:"content";}i:1;a:5:{s:4:"name";s:16:"only_search_meta";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:39:"Whether to only do a META (tags) search";s:11:"phpdoc_name";s:16:"only_search_meta";}i:2;a:5:{s:4:"name";s:9:"direction";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"Order direction";s:11:"phpdoc_name";s:9:"direction";}i:3;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:31:"Start position in total results";s:11:"phpdoc_name";s:3:"max";}i:4;a:5:{s:4:"name";s:5:"start";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:34:"Maximum results to return in total";s:11:"phpdoc_name";s:5:"start";}i:5;a:5:{s:4:"name";s:11:"only_titles";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:69:"Whether only to search titles (as opposed to both titles and content)";s:11:"phpdoc_name";s:11:"only_titles";}i:6;a:5:{s:4:"name";s:13:"content_where";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:120:"Where clause that selects the content according to the main search string (SQL query fragment) (blank: full-text search)";s:11:"phpdoc_name";s:13:"content_where";}i:7;a:5:{s:4:"name";s:6:"author";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:28:"Username/Author to match for";s:11:"phpdoc_name";s:6:"author";}i:8;a:5:{s:4:"name";s:9:"author_id";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:38:"Member-ID to match for (null: unknown)";s:11:"phpdoc_name";s:9:"author_id";}i:9;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:51:"Cutoff date (TIME or a pair representing the range)";s:11:"phpdoc_name";s:6:"cutoff";}i:10;a:6:{s:4:"name";s:4:"sort";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:57:"The sort type (gets remapped to a field in this function)";s:11:"phpdoc_name";s:4:"sort";s:3:"set";s:14:"title add_date";}i:11;a:5:{s:4:"name";s:8:"limit_to";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:31:"Limit to this number of results";s:11:"phpdoc_name";s:8:"limit_to";}i:12;a:6:{s:4:"name";s:16:"boolean_operator";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:33:"What kind of boolean search to do";s:11:"phpdoc_name";s:16:"boolean_operator";s:3:"set";s:6:"or and";}i:13;a:5:{s:4:"name";s:12:"where_clause";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:68:"Where constraints known by the main search code (SQL query fragment)";s:11:"phpdoc_name";s:12:"where_clause";}i:14;a:5:{s:4:"name";s:12:"search_under";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:50:"Comma-separated list of categories to search under";s:11:"phpdoc_name";s:12:"search_under";}i:15;a:5:{s:4:"name";s:14:"boolean_search";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether it is a boolean search";s:11:"phpdoc_name";s:14:"boolean_search";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for search results.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:32:"List of maps (template, orderer)";}}s:6:"render";a:6:{s:8:"filename";s:42:"sources/hooks/modules/search/downloads.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"row";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:48:"The data row stored when we retrieved the result";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:6:"render";s:11:"description";s:43:"Run function for rendering a search result.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:10:"The output";}}}s:4:"name";s:21:"Hook_search_downloads";s:7:"comment";b:1;}s:20:"Hook_search_filedump";a:3:{s:9:"functions";a:3:{s:4:"info";a:6:{s:8:"filename";s:41:"sources/hooks/modules/search/filedump.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:17:"check_permissions";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:17:"check_permissions";}}s:4:"name";s:4:"info";s:11:"description";s:34:"Find details for this search hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Map of search hook details (null: hook is disabled).";}}s:9:"ajax_tree";a:6:{s:8:"filename";s:41:"sources/hooks/modules/search/filedump.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"ajax_tree";s:11:"description";s:89:"Get details for an ajax-tree-list of entries for the content covered by this search hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:33:"A pair: the hook, and the options";}}s:3:"run";a:6:{s:8:"filename";s:41:"sources/hooks/modules/search/filedump.php";s:10:"parameters";a:16:{i:0;a:5:{s:4:"name";s:7:"content";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"Search string";s:11:"phpdoc_name";s:7:"content";}i:1;a:5:{s:4:"name";s:16:"only_search_meta";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:39:"Whether to only do a META (tags) search";s:11:"phpdoc_name";s:16:"only_search_meta";}i:2;a:5:{s:4:"name";s:9:"direction";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"Order direction";s:11:"phpdoc_name";s:9:"direction";}i:3;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:31:"Start position in total results";s:11:"phpdoc_name";s:3:"max";}i:4;a:5:{s:4:"name";s:5:"start";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:34:"Maximum results to return in total";s:11:"phpdoc_name";s:5:"start";}i:5;a:5:{s:4:"name";s:11:"only_titles";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:69:"Whether only to search titles (as opposed to both titles and content)";s:11:"phpdoc_name";s:11:"only_titles";}i:6;a:5:{s:4:"name";s:13:"content_where";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:120:"Where clause that selects the content according to the main search string (SQL query fragment) (blank: full-text search)";s:11:"phpdoc_name";s:13:"content_where";}i:7;a:5:{s:4:"name";s:6:"author";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:28:"Username/Author to match for";s:11:"phpdoc_name";s:6:"author";}i:8;a:5:{s:4:"name";s:9:"author_id";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:38:"Member-ID to match for (null: unknown)";s:11:"phpdoc_name";s:9:"author_id";}i:9;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:51:"Cutoff date (TIME or a pair representing the range)";s:11:"phpdoc_name";s:6:"cutoff";}i:10;a:6:{s:4:"name";s:4:"sort";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:57:"The sort type (gets remapped to a field in this function)";s:11:"phpdoc_name";s:4:"sort";s:3:"set";s:14:"title add_date";}i:11;a:5:{s:4:"name";s:8:"limit_to";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:31:"Limit to this number of results";s:11:"phpdoc_name";s:8:"limit_to";}i:12;a:6:{s:4:"name";s:16:"boolean_operator";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:33:"What kind of boolean search to do";s:11:"phpdoc_name";s:16:"boolean_operator";s:3:"set";s:6:"or and";}i:13;a:5:{s:4:"name";s:12:"where_clause";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:68:"Where constraints known by the main search code (SQL query fragment)";s:11:"phpdoc_name";s:12:"where_clause";}i:14;a:5:{s:4:"name";s:12:"search_under";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:50:"Comma-separated list of categories to search under";s:11:"phpdoc_name";s:12:"search_under";}i:15;a:5:{s:4:"name";s:14:"boolean_search";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether it is a boolean search";s:11:"phpdoc_name";s:14:"boolean_search";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for search results.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:32:"List of maps (template, orderer)";}}}s:4:"name";s:20:"Hook_search_filedump";s:7:"comment";b:1;}s:21:"Hook_search_galleries";a:3:{s:9:"functions";a:4:{s:4:"info";a:6:{s:8:"filename";s:42:"sources/hooks/modules/search/galleries.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:17:"check_permissions";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:17:"check_permissions";}}s:4:"name";s:4:"info";s:11:"description";s:34:"Find details for this search hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Map of search hook details (null: hook is disabled).";}}s:10:"get_fields";a:6:{s:8:"filename";s:42:"sources/hooks/modules/search/galleries.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"get_fields";s:11:"description";s:38:"Get a list of extra fields to ask for.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:38:"A list of maps specifying extra fields";}}s:3:"run";a:6:{s:8:"filename";s:42:"sources/hooks/modules/search/galleries.php";s:10:"parameters";a:16:{i:0;a:5:{s:4:"name";s:7:"content";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"Search string";s:11:"phpdoc_name";s:7:"content";}i:1;a:5:{s:4:"name";s:16:"only_search_meta";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:39:"Whether to only do a META (tags) search";s:11:"phpdoc_name";s:16:"only_search_meta";}i:2;a:5:{s:4:"name";s:9:"direction";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"Order direction";s:11:"phpdoc_name";s:9:"direction";}i:3;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:31:"Start position in total results";s:11:"phpdoc_name";s:3:"max";}i:4;a:5:{s:4:"name";s:5:"start";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:34:"Maximum results to return in total";s:11:"phpdoc_name";s:5:"start";}i:5;a:5:{s:4:"name";s:11:"only_titles";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:69:"Whether only to search titles (as opposed to both titles and content)";s:11:"phpdoc_name";s:11:"only_titles";}i:6;a:5:{s:4:"name";s:13:"content_where";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:120:"Where clause that selects the content according to the main search string (SQL query fragment) (blank: full-text search)";s:11:"phpdoc_name";s:13:"content_where";}i:7;a:5:{s:4:"name";s:6:"author";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:28:"Username/Author to match for";s:11:"phpdoc_name";s:6:"author";}i:8;a:5:{s:4:"name";s:9:"author_id";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:38:"Member-ID to match for (null: unknown)";s:11:"phpdoc_name";s:9:"author_id";}i:9;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:51:"Cutoff date (TIME or a pair representing the range)";s:11:"phpdoc_name";s:6:"cutoff";}i:10;a:6:{s:4:"name";s:4:"sort";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:57:"The sort type (gets remapped to a field in this function)";s:11:"phpdoc_name";s:4:"sort";s:3:"set";s:14:"title add_date";}i:11;a:5:{s:4:"name";s:8:"limit_to";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:31:"Limit to this number of results";s:11:"phpdoc_name";s:8:"limit_to";}i:12;a:6:{s:4:"name";s:16:"boolean_operator";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:33:"What kind of boolean search to do";s:11:"phpdoc_name";s:16:"boolean_operator";s:3:"set";s:6:"or and";}i:13;a:5:{s:4:"name";s:12:"where_clause";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:68:"Where constraints known by the main search code (SQL query fragment)";s:11:"phpdoc_name";s:12:"where_clause";}i:14;a:5:{s:4:"name";s:12:"search_under";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:50:"Comma-separated list of categories to search under";s:11:"phpdoc_name";s:12:"search_under";}i:15;a:5:{s:4:"name";s:14:"boolean_search";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether it is a boolean search";s:11:"phpdoc_name";s:14:"boolean_search";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for search results.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:32:"List of maps (template, orderer)";}}s:6:"render";a:6:{s:8:"filename";s:42:"sources/hooks/modules/search/galleries.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"row";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:48:"The data row stored when we retrieved the result";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:6:"render";s:11:"description";s:43:"Run function for rendering a search result.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:10:"The output";}}}s:4:"name";s:21:"Hook_search_galleries";s:7:"comment";b:1;}s:18:"Hook_search_images";a:3:{s:9:"functions";a:5:{s:4:"info";a:6:{s:8:"filename";s:39:"sources/hooks/modules/search/images.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:17:"check_permissions";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:17:"check_permissions";}}s:4:"name";s:4:"info";s:11:"description";s:34:"Find details for this search hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Map of search hook details (null: hook is disabled).";}}s:9:"ajax_tree";a:6:{s:8:"filename";s:39:"sources/hooks/modules/search/images.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"ajax_tree";s:11:"description";s:89:"Get details for an ajax-tree-list of entries for the content covered by this search hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:33:"A pair: the hook, and the options";}}s:10:"get_fields";a:6:{s:8:"filename";s:39:"sources/hooks/modules/search/images.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"get_fields";s:11:"description";s:38:"Get a list of extra fields to ask for.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:38:"A list of maps specifying extra fields";}}s:3:"run";a:6:{s:8:"filename";s:39:"sources/hooks/modules/search/images.php";s:10:"parameters";a:16:{i:0;a:5:{s:4:"name";s:7:"content";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"Search string";s:11:"phpdoc_name";s:7:"content";}i:1;a:5:{s:4:"name";s:16:"only_search_meta";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:39:"Whether to only do a META (tags) search";s:11:"phpdoc_name";s:16:"only_search_meta";}i:2;a:5:{s:4:"name";s:9:"direction";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"Order direction";s:11:"phpdoc_name";s:9:"direction";}i:3;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:31:"Start position in total results";s:11:"phpdoc_name";s:3:"max";}i:4;a:5:{s:4:"name";s:5:"start";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:34:"Maximum results to return in total";s:11:"phpdoc_name";s:5:"start";}i:5;a:5:{s:4:"name";s:11:"only_titles";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:69:"Whether only to search titles (as opposed to both titles and content)";s:11:"phpdoc_name";s:11:"only_titles";}i:6;a:5:{s:4:"name";s:13:"content_where";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:120:"Where clause that selects the content according to the main search string (SQL query fragment) (blank: full-text search)";s:11:"phpdoc_name";s:13:"content_where";}i:7;a:5:{s:4:"name";s:6:"author";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:28:"Username/Author to match for";s:11:"phpdoc_name";s:6:"author";}i:8;a:5:{s:4:"name";s:9:"author_id";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:38:"Member-ID to match for (null: unknown)";s:11:"phpdoc_name";s:9:"author_id";}i:9;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:51:"Cutoff date (TIME or a pair representing the range)";s:11:"phpdoc_name";s:6:"cutoff";}i:10;a:6:{s:4:"name";s:4:"sort";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:57:"The sort type (gets remapped to a field in this function)";s:11:"phpdoc_name";s:4:"sort";s:3:"set";s:14:"title add_date";}i:11;a:5:{s:4:"name";s:8:"limit_to";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:31:"Limit to this number of results";s:11:"phpdoc_name";s:8:"limit_to";}i:12;a:6:{s:4:"name";s:16:"boolean_operator";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:33:"What kind of boolean search to do";s:11:"phpdoc_name";s:16:"boolean_operator";s:3:"set";s:6:"or and";}i:13;a:5:{s:4:"name";s:12:"where_clause";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:68:"Where constraints known by the main search code (SQL query fragment)";s:11:"phpdoc_name";s:12:"where_clause";}i:14;a:5:{s:4:"name";s:12:"search_under";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:50:"Comma-separated list of categories to search under";s:11:"phpdoc_name";s:12:"search_under";}i:15;a:5:{s:4:"name";s:14:"boolean_search";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether it is a boolean search";s:11:"phpdoc_name";s:14:"boolean_search";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for search results.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:32:"List of maps (template, orderer)";}}s:6:"render";a:6:{s:8:"filename";s:39:"sources/hooks/modules/search/images.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"row";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:48:"The data row stored when we retrieved the result";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:6:"render";s:11:"description";s:43:"Run function for rendering a search result.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:10:"The output";}}}s:4:"name";s:18:"Hook_search_images";s:7:"comment";b:1;}s:16:"Hook_search_news";a:3:{s:9:"functions";a:5:{s:4:"info";a:6:{s:8:"filename";s:37:"sources/hooks/modules/search/news.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:17:"check_permissions";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:17:"check_permissions";}}s:4:"name";s:4:"info";s:11:"description";s:34:"Find details for this search hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Map of search hook details (null: hook is disabled).";}}s:8:"get_tree";a:6:{s:8:"filename";s:37:"sources/hooks/modules/search/news.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:9:"_selected";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:25:"The default selected item";s:11:"phpdoc_name";s:9:"_selected";}}s:4:"name";s:8:"get_tree";s:11:"description";s:105:"Get a list of entries for the content covered by this search hook. In hierarchical list selection format.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:14:"Tree structure";}}s:10:"get_fields";a:6:{s:8:"filename";s:37:"sources/hooks/modules/search/news.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"get_fields";s:11:"description";s:38:"Get a list of extra fields to ask for.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:38:"A list of maps specifying extra fields";}}s:3:"run";a:6:{s:8:"filename";s:37:"sources/hooks/modules/search/news.php";s:10:"parameters";a:16:{i:0;a:5:{s:4:"name";s:7:"content";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"Search string";s:11:"phpdoc_name";s:7:"content";}i:1;a:5:{s:4:"name";s:16:"only_search_meta";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:39:"Whether to only do a META (tags) search";s:11:"phpdoc_name";s:16:"only_search_meta";}i:2;a:5:{s:4:"name";s:9:"direction";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"Order direction";s:11:"phpdoc_name";s:9:"direction";}i:3;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:31:"Start position in total results";s:11:"phpdoc_name";s:3:"max";}i:4;a:5:{s:4:"name";s:5:"start";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:34:"Maximum results to return in total";s:11:"phpdoc_name";s:5:"start";}i:5;a:5:{s:4:"name";s:11:"only_titles";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:69:"Whether only to search titles (as opposed to both titles and content)";s:11:"phpdoc_name";s:11:"only_titles";}i:6;a:5:{s:4:"name";s:13:"content_where";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:120:"Where clause that selects the content according to the main search string (SQL query fragment) (blank: full-text search)";s:11:"phpdoc_name";s:13:"content_where";}i:7;a:5:{s:4:"name";s:6:"author";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:28:"Username/Author to match for";s:11:"phpdoc_name";s:6:"author";}i:8;a:5:{s:4:"name";s:9:"author_id";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:38:"Member-ID to match for (null: unknown)";s:11:"phpdoc_name";s:9:"author_id";}i:9;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:51:"Cutoff date (TIME or a pair representing the range)";s:11:"phpdoc_name";s:6:"cutoff";}i:10;a:6:{s:4:"name";s:4:"sort";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:57:"The sort type (gets remapped to a field in this function)";s:11:"phpdoc_name";s:4:"sort";s:3:"set";s:14:"title add_date";}i:11;a:5:{s:4:"name";s:8:"limit_to";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:31:"Limit to this number of results";s:11:"phpdoc_name";s:8:"limit_to";}i:12;a:6:{s:4:"name";s:16:"boolean_operator";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:33:"What kind of boolean search to do";s:11:"phpdoc_name";s:16:"boolean_operator";s:3:"set";s:6:"or and";}i:13;a:5:{s:4:"name";s:12:"where_clause";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:68:"Where constraints known by the main search code (SQL query fragment)";s:11:"phpdoc_name";s:12:"where_clause";}i:14;a:5:{s:4:"name";s:12:"search_under";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:50:"Comma-separated list of categories to search under";s:11:"phpdoc_name";s:12:"search_under";}i:15;a:5:{s:4:"name";s:14:"boolean_search";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether it is a boolean search";s:11:"phpdoc_name";s:14:"boolean_search";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for search results.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:32:"List of maps (template, orderer)";}}s:6:"render";a:6:{s:8:"filename";s:37:"sources/hooks/modules/search/news.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:5:"myrow";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:48:"The data row stored when we retrieved the result";s:11:"phpdoc_name";s:5:"myrow";}}s:4:"name";s:6:"render";s:11:"description";s:43:"Run function for rendering a search result.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:10:"The output";}}}s:4:"name";s:16:"Hook_search_news";s:7:"comment";b:1;}s:17:"Hook_search_polls";a:3:{s:9:"functions";a:4:{s:4:"info";a:6:{s:8:"filename";s:38:"sources/hooks/modules/search/polls.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:17:"check_permissions";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:17:"check_permissions";}}s:4:"name";s:4:"info";s:11:"description";s:34:"Find details for this search hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Map of search hook details (null: hook is disabled).";}}s:10:"get_fields";a:6:{s:8:"filename";s:38:"sources/hooks/modules/search/polls.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"get_fields";s:11:"description";s:38:"Get a list of extra fields to ask for.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:38:"A list of maps specifying extra fields";}}s:3:"run";a:6:{s:8:"filename";s:38:"sources/hooks/modules/search/polls.php";s:10:"parameters";a:16:{i:0;a:5:{s:4:"name";s:7:"content";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"Search string";s:11:"phpdoc_name";s:7:"content";}i:1;a:5:{s:4:"name";s:16:"only_search_meta";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:39:"Whether to only do a META (tags) search";s:11:"phpdoc_name";s:16:"only_search_meta";}i:2;a:5:{s:4:"name";s:9:"direction";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"Order direction";s:11:"phpdoc_name";s:9:"direction";}i:3;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:31:"Start position in total results";s:11:"phpdoc_name";s:3:"max";}i:4;a:5:{s:4:"name";s:5:"start";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:34:"Maximum results to return in total";s:11:"phpdoc_name";s:5:"start";}i:5;a:5:{s:4:"name";s:11:"only_titles";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:69:"Whether only to search titles (as opposed to both titles and content)";s:11:"phpdoc_name";s:11:"only_titles";}i:6;a:5:{s:4:"name";s:13:"content_where";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:120:"Where clause that selects the content according to the main search string (SQL query fragment) (blank: full-text search)";s:11:"phpdoc_name";s:13:"content_where";}i:7;a:5:{s:4:"name";s:6:"author";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:28:"Username/Author to match for";s:11:"phpdoc_name";s:6:"author";}i:8;a:5:{s:4:"name";s:9:"author_id";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:38:"Member-ID to match for (null: unknown)";s:11:"phpdoc_name";s:9:"author_id";}i:9;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:51:"Cutoff date (TIME or a pair representing the range)";s:11:"phpdoc_name";s:6:"cutoff";}i:10;a:6:{s:4:"name";s:4:"sort";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:57:"The sort type (gets remapped to a field in this function)";s:11:"phpdoc_name";s:4:"sort";s:3:"set";s:14:"title add_date";}i:11;a:5:{s:4:"name";s:8:"limit_to";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:31:"Limit to this number of results";s:11:"phpdoc_name";s:8:"limit_to";}i:12;a:6:{s:4:"name";s:16:"boolean_operator";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:33:"What kind of boolean search to do";s:11:"phpdoc_name";s:16:"boolean_operator";s:3:"set";s:6:"or and";}i:13;a:5:{s:4:"name";s:12:"where_clause";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:68:"Where constraints known by the main search code (SQL query fragment)";s:11:"phpdoc_name";s:12:"where_clause";}i:14;a:5:{s:4:"name";s:12:"search_under";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:50:"Comma-separated list of categories to search under";s:11:"phpdoc_name";s:12:"search_under";}i:15;a:5:{s:4:"name";s:14:"boolean_search";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether it is a boolean search";s:11:"phpdoc_name";s:14:"boolean_search";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for search results.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:32:"List of maps (template, orderer)";}}s:6:"render";a:6:{s:8:"filename";s:38:"sources/hooks/modules/search/polls.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"row";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:48:"The data row stored when we retrieved the result";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:6:"render";s:11:"description";s:43:"Run function for rendering a search result.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:10:"The output";}}}s:4:"name";s:17:"Hook_search_polls";s:7:"comment";b:1;}s:16:"Hook_search_quiz";a:3:{s:9:"functions";a:4:{s:4:"info";a:6:{s:8:"filename";s:37:"sources/hooks/modules/search/quiz.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:17:"check_permissions";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:17:"check_permissions";}}s:4:"name";s:4:"info";s:11:"description";s:34:"Find details for this search hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Map of search hook details (null: hook is disabled).";}}s:10:"get_fields";a:6:{s:8:"filename";s:37:"sources/hooks/modules/search/quiz.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"get_fields";s:11:"description";s:38:"Get a list of extra fields to ask for.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:38:"A list of maps specifying extra fields";}}s:3:"run";a:6:{s:8:"filename";s:37:"sources/hooks/modules/search/quiz.php";s:10:"parameters";a:16:{i:0;a:5:{s:4:"name";s:7:"content";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"Search string";s:11:"phpdoc_name";s:7:"content";}i:1;a:5:{s:4:"name";s:16:"only_search_meta";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:39:"Whether to only do a META (tags) search";s:11:"phpdoc_name";s:16:"only_search_meta";}i:2;a:5:{s:4:"name";s:9:"direction";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"Order direction";s:11:"phpdoc_name";s:9:"direction";}i:3;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:31:"Start position in total results";s:11:"phpdoc_name";s:3:"max";}i:4;a:5:{s:4:"name";s:5:"start";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:34:"Maximum results to return in total";s:11:"phpdoc_name";s:5:"start";}i:5;a:5:{s:4:"name";s:11:"only_titles";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:69:"Whether only to search titles (as opposed to both titles and content)";s:11:"phpdoc_name";s:11:"only_titles";}i:6;a:5:{s:4:"name";s:13:"content_where";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:120:"Where clause that selects the content according to the main search string (SQL query fragment) (blank: full-text search)";s:11:"phpdoc_name";s:13:"content_where";}i:7;a:5:{s:4:"name";s:6:"author";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:28:"Username/Author to match for";s:11:"phpdoc_name";s:6:"author";}i:8;a:5:{s:4:"name";s:9:"author_id";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:38:"Member-ID to match for (null: unknown)";s:11:"phpdoc_name";s:9:"author_id";}i:9;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:51:"Cutoff date (TIME or a pair representing the range)";s:11:"phpdoc_name";s:6:"cutoff";}i:10;a:6:{s:4:"name";s:4:"sort";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:57:"The sort type (gets remapped to a field in this function)";s:11:"phpdoc_name";s:4:"sort";s:3:"set";s:14:"title add_date";}i:11;a:5:{s:4:"name";s:8:"limit_to";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:31:"Limit to this number of results";s:11:"phpdoc_name";s:8:"limit_to";}i:12;a:6:{s:4:"name";s:16:"boolean_operator";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:33:"What kind of boolean search to do";s:11:"phpdoc_name";s:16:"boolean_operator";s:3:"set";s:6:"or and";}i:13;a:5:{s:4:"name";s:12:"where_clause";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:68:"Where constraints known by the main search code (SQL query fragment)";s:11:"phpdoc_name";s:12:"where_clause";}i:14;a:5:{s:4:"name";s:12:"search_under";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:50:"Comma-separated list of categories to search under";s:11:"phpdoc_name";s:12:"search_under";}i:15;a:5:{s:4:"name";s:14:"boolean_search";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether it is a boolean search";s:11:"phpdoc_name";s:14:"boolean_search";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for search results.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:32:"List of maps (template, orderer)";}}s:6:"render";a:6:{s:8:"filename";s:37:"sources/hooks/modules/search/quiz.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"row";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:48:"The data row stored when we retrieved the result";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:6:"render";s:11:"description";s:43:"Run function for rendering a search result.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:10:"The output";}}}s:4:"name";s:16:"Hook_search_quiz";s:7:"comment";b:1;}s:18:"Hook_search_videos";a:3:{s:9:"functions";a:5:{s:4:"info";a:6:{s:8:"filename";s:39:"sources/hooks/modules/search/videos.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:17:"check_permissions";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:17:"check_permissions";}}s:4:"name";s:4:"info";s:11:"description";s:34:"Find details for this search hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Map of search hook details (null: hook is disabled).";}}s:9:"ajax_tree";a:6:{s:8:"filename";s:39:"sources/hooks/modules/search/videos.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"ajax_tree";s:11:"description";s:89:"Get details for an ajax-tree-list of entries for the content covered by this search hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:33:"A pair: the hook, and the options";}}s:10:"get_fields";a:6:{s:8:"filename";s:39:"sources/hooks/modules/search/videos.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"get_fields";s:11:"description";s:38:"Get a list of extra fields to ask for.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:38:"A list of maps specifying extra fields";}}s:3:"run";a:6:{s:8:"filename";s:39:"sources/hooks/modules/search/videos.php";s:10:"parameters";a:16:{i:0;a:5:{s:4:"name";s:7:"content";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"Search string";s:11:"phpdoc_name";s:7:"content";}i:1;a:5:{s:4:"name";s:16:"only_search_meta";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:39:"Whether to only do a META (tags) search";s:11:"phpdoc_name";s:16:"only_search_meta";}i:2;a:5:{s:4:"name";s:9:"direction";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"Order direction";s:11:"phpdoc_name";s:9:"direction";}i:3;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:31:"Start position in total results";s:11:"phpdoc_name";s:3:"max";}i:4;a:5:{s:4:"name";s:5:"start";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:34:"Maximum results to return in total";s:11:"phpdoc_name";s:5:"start";}i:5;a:5:{s:4:"name";s:11:"only_titles";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:69:"Whether only to search titles (as opposed to both titles and content)";s:11:"phpdoc_name";s:11:"only_titles";}i:6;a:5:{s:4:"name";s:13:"content_where";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:120:"Where clause that selects the content according to the main search string (SQL query fragment) (blank: full-text search)";s:11:"phpdoc_name";s:13:"content_where";}i:7;a:5:{s:4:"name";s:6:"author";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:28:"Username/Author to match for";s:11:"phpdoc_name";s:6:"author";}i:8;a:5:{s:4:"name";s:9:"author_id";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:38:"Member-ID to match for (null: unknown)";s:11:"phpdoc_name";s:9:"author_id";}i:9;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:51:"Cutoff date (TIME or a pair representing the range)";s:11:"phpdoc_name";s:6:"cutoff";}i:10;a:6:{s:4:"name";s:4:"sort";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:57:"The sort type (gets remapped to a field in this function)";s:11:"phpdoc_name";s:4:"sort";s:3:"set";s:14:"title add_date";}i:11;a:5:{s:4:"name";s:8:"limit_to";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:31:"Limit to this number of results";s:11:"phpdoc_name";s:8:"limit_to";}i:12;a:6:{s:4:"name";s:16:"boolean_operator";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:33:"What kind of boolean search to do";s:11:"phpdoc_name";s:16:"boolean_operator";s:3:"set";s:6:"or and";}i:13;a:5:{s:4:"name";s:12:"where_clause";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:68:"Where constraints known by the main search code (SQL query fragment)";s:11:"phpdoc_name";s:12:"where_clause";}i:14;a:5:{s:4:"name";s:12:"search_under";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:50:"Comma-separated list of categories to search under";s:11:"phpdoc_name";s:12:"search_under";}i:15;a:5:{s:4:"name";s:14:"boolean_search";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether it is a boolean search";s:11:"phpdoc_name";s:14:"boolean_search";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for search results.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:32:"List of maps (template, orderer)";}}s:6:"render";a:6:{s:8:"filename";s:39:"sources/hooks/modules/search/videos.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"row";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:48:"The data row stored when we retrieved the result";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:6:"render";s:11:"description";s:43:"Run function for rendering a search result.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:10:"The output";}}}s:4:"name";s:18:"Hook_search_videos";s:7:"comment";b:1;}s:22:"Hook_search_wiki_pages";a:3:{s:9:"functions";a:4:{s:4:"info";a:6:{s:8:"filename";s:43:"sources/hooks/modules/search/wiki_pages.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:17:"check_permissions";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:17:"check_permissions";}}s:4:"name";s:4:"info";s:11:"description";s:34:"Find details for this search hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Map of search hook details (null: hook is disabled).";}}s:10:"get_fields";a:6:{s:8:"filename";s:43:"sources/hooks/modules/search/wiki_pages.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"get_fields";s:11:"description";s:38:"Get a list of extra fields to ask for.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:38:"A list of maps specifying extra fields";}}s:3:"run";a:6:{s:8:"filename";s:43:"sources/hooks/modules/search/wiki_pages.php";s:10:"parameters";a:16:{i:0;a:5:{s:4:"name";s:7:"content";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"Search string";s:11:"phpdoc_name";s:7:"content";}i:1;a:5:{s:4:"name";s:16:"only_search_meta";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:39:"Whether to only do a META (tags) search";s:11:"phpdoc_name";s:16:"only_search_meta";}i:2;a:5:{s:4:"name";s:9:"direction";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"Order direction";s:11:"phpdoc_name";s:9:"direction";}i:3;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:31:"Start position in total results";s:11:"phpdoc_name";s:3:"max";}i:4;a:5:{s:4:"name";s:5:"start";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:34:"Maximum results to return in total";s:11:"phpdoc_name";s:5:"start";}i:5;a:5:{s:4:"name";s:11:"only_titles";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:69:"Whether only to search titles (as opposed to both titles and content)";s:11:"phpdoc_name";s:11:"only_titles";}i:6;a:5:{s:4:"name";s:13:"content_where";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:120:"Where clause that selects the content according to the main search string (SQL query fragment) (blank: full-text search)";s:11:"phpdoc_name";s:13:"content_where";}i:7;a:5:{s:4:"name";s:6:"author";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:28:"Username/Author to match for";s:11:"phpdoc_name";s:6:"author";}i:8;a:5:{s:4:"name";s:9:"author_id";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:38:"Member-ID to match for (null: unknown)";s:11:"phpdoc_name";s:9:"author_id";}i:9;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:51:"Cutoff date (TIME or a pair representing the range)";s:11:"phpdoc_name";s:6:"cutoff";}i:10;a:6:{s:4:"name";s:4:"sort";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:57:"The sort type (gets remapped to a field in this function)";s:11:"phpdoc_name";s:4:"sort";s:3:"set";s:14:"title add_date";}i:11;a:5:{s:4:"name";s:8:"limit_to";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:31:"Limit to this number of results";s:11:"phpdoc_name";s:8:"limit_to";}i:12;a:6:{s:4:"name";s:16:"boolean_operator";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:33:"What kind of boolean search to do";s:11:"phpdoc_name";s:16:"boolean_operator";s:3:"set";s:6:"or and";}i:13;a:5:{s:4:"name";s:12:"where_clause";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:68:"Where constraints known by the main search code (SQL query fragment)";s:11:"phpdoc_name";s:12:"where_clause";}i:14;a:5:{s:4:"name";s:12:"search_under";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:50:"Comma-separated list of categories to search under";s:11:"phpdoc_name";s:12:"search_under";}i:15;a:5:{s:4:"name";s:14:"boolean_search";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether it is a boolean search";s:11:"phpdoc_name";s:14:"boolean_search";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for search results.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:32:"List of maps (template, orderer)";}}s:6:"render";a:6:{s:8:"filename";s:43:"sources/hooks/modules/search/wiki_pages.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"row";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:48:"The data row stored when we retrieved the result";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:6:"render";s:11:"description";s:43:"Run function for rendering a search result.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:10:"The output";}}}s:4:"name";s:22:"Hook_search_wiki_pages";s:7:"comment";b:1;}s:22:"Hook_search_wiki_posts";a:3:{s:9:"functions";a:5:{s:4:"info";a:6:{s:8:"filename";s:43:"sources/hooks/modules/search/wiki_posts.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:17:"check_permissions";s:7:"default";s:12:"boolean-true";s:11:"default_raw";s:4:"true";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:29:"Whether to check permissions.";s:11:"phpdoc_name";s:17:"check_permissions";}}s:4:"name";s:4:"info";s:11:"description";s:34:"Find details for this search hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"?array";s:11:"description";s:52:"Map of search hook details (null: hook is disabled).";}}s:9:"ajax_tree";a:6:{s:8:"filename";s:43:"sources/hooks/modules/search/wiki_posts.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"ajax_tree";s:11:"description";s:89:"Get details for an ajax-tree-list of entries for the content covered by this search hook.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:33:"A pair: the hook, and the options";}}s:10:"get_fields";a:6:{s:8:"filename";s:43:"sources/hooks/modules/search/wiki_posts.php";s:10:"parameters";a:0:{}s:4:"name";s:10:"get_fields";s:11:"description";s:38:"Get a list of extra fields to ask for.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:38:"A list of maps specifying extra fields";}}s:3:"run";a:6:{s:8:"filename";s:43:"sources/hooks/modules/search/wiki_posts.php";s:10:"parameters";a:16:{i:0;a:5:{s:4:"name";s:7:"content";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:13:"Search string";s:11:"phpdoc_name";s:7:"content";}i:1;a:5:{s:4:"name";s:16:"only_search_meta";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:39:"Whether to only do a META (tags) search";s:11:"phpdoc_name";s:16:"only_search_meta";}i:2;a:5:{s:4:"name";s:9:"direction";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:15:"Order direction";s:11:"phpdoc_name";s:9:"direction";}i:3;a:5:{s:4:"name";s:3:"max";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:31:"Start position in total results";s:11:"phpdoc_name";s:3:"max";}i:4;a:5:{s:4:"name";s:5:"start";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:34:"Maximum results to return in total";s:11:"phpdoc_name";s:5:"start";}i:5;a:5:{s:4:"name";s:11:"only_titles";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:69:"Whether only to search titles (as opposed to both titles and content)";s:11:"phpdoc_name";s:11:"only_titles";}i:6;a:5:{s:4:"name";s:13:"content_where";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:120:"Where clause that selects the content according to the main search string (SQL query fragment) (blank: full-text search)";s:11:"phpdoc_name";s:13:"content_where";}i:7;a:5:{s:4:"name";s:6:"author";s:3:"ref";b:0;s:4:"type";s:10:"SHORT_TEXT";s:11:"description";s:28:"Username/Author to match for";s:11:"phpdoc_name";s:6:"author";}i:8;a:5:{s:4:"name";s:9:"author_id";s:3:"ref";b:0;s:4:"type";s:7:"?MEMBER";s:11:"description";s:38:"Member-ID to match for (null: unknown)";s:11:"phpdoc_name";s:9:"author_id";}i:9;a:5:{s:4:"name";s:6:"cutoff";s:3:"ref";b:0;s:4:"type";s:5:"mixed";s:11:"description";s:51:"Cutoff date (TIME or a pair representing the range)";s:11:"phpdoc_name";s:6:"cutoff";}i:10;a:6:{s:4:"name";s:4:"sort";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:57:"The sort type (gets remapped to a field in this function)";s:11:"phpdoc_name";s:4:"sort";s:3:"set";s:14:"title add_date";}i:11;a:5:{s:4:"name";s:8:"limit_to";s:3:"ref";b:0;s:4:"type";s:7:"integer";s:11:"description";s:31:"Limit to this number of results";s:11:"phpdoc_name";s:8:"limit_to";}i:12;a:6:{s:4:"name";s:16:"boolean_operator";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:33:"What kind of boolean search to do";s:11:"phpdoc_name";s:16:"boolean_operator";s:3:"set";s:6:"or and";}i:13;a:5:{s:4:"name";s:12:"where_clause";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:68:"Where constraints known by the main search code (SQL query fragment)";s:11:"phpdoc_name";s:12:"where_clause";}i:14;a:5:{s:4:"name";s:12:"search_under";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:50:"Comma-separated list of categories to search under";s:11:"phpdoc_name";s:12:"search_under";}i:15;a:5:{s:4:"name";s:14:"boolean_search";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether it is a boolean search";s:11:"phpdoc_name";s:14:"boolean_search";}}s:4:"name";s:3:"run";s:11:"description";s:32:"Run function for search results.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:32:"List of maps (template, orderer)";}}s:6:"render";a:6:{s:8:"filename";s:43:"sources/hooks/modules/search/wiki_posts.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:3:"row";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:48:"The data row stored when we retrieved the result";s:11:"phpdoc_name";s:3:"row";}}s:4:"name";s:6:"render";s:11:"description";s:43:"Run function for rendering a search result.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:10:"The output";}}}s:4:"name";s:22:"Hook_search_wiki_posts";s:7:"comment";b:1;}s:29:"Hook_addon_registry_actionlog";a:3:{s:9:"functions";a:12:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/actionlog.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/actionlog.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/actionlog.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/actionlog.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/actionlog.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/actionlog.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/actionlog.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/actionlog.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:48:"tpl_preview__administrative__show_revisions_wrap";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/actionlog.php";s:10:"parameters";a:0:{}s:4:"name";s:48:"tpl_preview__administrative__show_revisions_wrap";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:52:"tpl_preview__administrative__show_revision_diff_icon";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/actionlog.php";s:10:"parameters";a:0:{}s:4:"name";s:52:"tpl_preview__administrative__show_revision_diff_icon";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:29:"tpl_preview__revisions_screen";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/actionlog.php";s:10:"parameters";a:0:{}s:4:"name";s:29:"tpl_preview__revisions_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:26:"tpl_preview__revision_undo";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/actionlog.php";s:10:"parameters";a:0:{}s:4:"name";s:26:"tpl_preview__revision_undo";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:29:"Hook_addon_registry_actionlog";s:7:"comment";b:1;}s:35:"Hook_addon_registry_aggregate_types";a:3:{s:9:"functions";a:7:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/aggregate_types.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/aggregate_types.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/aggregate_types.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/aggregate_types.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/aggregate_types.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/aggregate_types.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/aggregate_types.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}}s:4:"name";s:35:"Hook_addon_registry_aggregate_types";s:7:"comment";b:1;}s:39:"Hook_addon_registry_apache_config_files";a:3:{s:9:"functions";a:7:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:60:"sources/hooks/systems/addon_registry/apache_config_files.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:60:"sources/hooks/systems/addon_registry/apache_config_files.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:60:"sources/hooks/systems/addon_registry/apache_config_files.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:60:"sources/hooks/systems/addon_registry/apache_config_files.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:60:"sources/hooks/systems/addon_registry/apache_config_files.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:60:"sources/hooks/systems/addon_registry/apache_config_files.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:60:"sources/hooks/systems/addon_registry/apache_config_files.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}}s:4:"name";s:39:"Hook_addon_registry_apache_config_files";s:7:"comment";b:1;}s:27:"Hook_addon_registry_authors";a:3:{s:9:"functions";a:11:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/authors.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/authors.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/authors.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/authors.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/authors.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/authors.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/authors.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/authors.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:49:"tpl_preview__administrative__author_manage_screen";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/authors.php";s:10:"parameters";a:0:{}s:4:"name";s:49:"tpl_preview__administrative__author_manage_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:26:"tpl_preview__author_screen";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/authors.php";s:10:"parameters";a:0:{}s:4:"name";s:26:"tpl_preview__author_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:32:"tpl_preview__author_popup_window";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/authors.php";s:10:"parameters";a:0:{}s:4:"name";s:32:"tpl_preview__author_popup_window";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:27:"Hook_addon_registry_authors";s:7:"comment";b:1;}s:26:"Hook_addon_registry_awards";a:3:{s:9:"functions";a:10:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:47:"sources/hooks/systems/addon_registry/awards.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:47:"sources/hooks/systems/addon_registry/awards.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:47:"sources/hooks/systems/addon_registry/awards.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:47:"sources/hooks/systems/addon_registry/awards.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:47:"sources/hooks/systems/addon_registry/awards.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:47:"sources/hooks/systems/addon_registry/awards.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:47:"sources/hooks/systems/addon_registry/awards.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:47:"sources/hooks/systems/addon_registry/awards.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:30:"tpl_preview__block_main_awards";a:6:{s:8:"filename";s:47:"sources/hooks/systems/addon_registry/awards.php";s:10:"parameters";a:0:{}s:4:"name";s:30:"tpl_preview__block_main_awards";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:28:"tpl_preview__awarded_content";a:6:{s:8:"filename";s:47:"sources/hooks/systems/addon_registry/awards.php";s:10:"parameters";a:0:{}s:4:"name";s:28:"tpl_preview__awarded_content";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:26:"Hook_addon_registry_awards";s:7:"comment";b:1;}s:26:"Hook_addon_registry_backup";a:3:{s:9:"functions";a:10:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:47:"sources/hooks/systems/addon_registry/backup.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:47:"sources/hooks/systems/addon_registry/backup.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:47:"sources/hooks/systems/addon_registry/backup.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:47:"sources/hooks/systems/addon_registry/backup.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:47:"sources/hooks/systems/addon_registry/backup.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:47:"sources/hooks/systems/addon_registry/backup.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:47:"sources/hooks/systems/addon_registry/backup.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:47:"sources/hooks/systems/addon_registry/backup.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:49:"tpl_preview__administrative__backup_launch_screen";a:6:{s:8:"filename";s:47:"sources/hooks/systems/addon_registry/backup.php";s:10:"parameters";a:0:{}s:4:"name";s:49:"tpl_preview__administrative__backup_launch_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:41:"tpl_preview__administrative__restore_wrap";a:6:{s:8:"filename";s:47:"sources/hooks/systems/addon_registry/backup.php";s:10:"parameters";a:0:{}s:4:"name";s:41:"tpl_preview__administrative__restore_wrap";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:26:"Hook_addon_registry_backup";s:7:"comment";b:1;}s:27:"Hook_addon_registry_banners";a:3:{s:9:"functions";a:23:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/banners.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/banners.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/banners.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/banners.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/banners.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/banners.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/banners.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/banners.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:27:"tpl_preview__banner_preview";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/banners.php";s:10:"parameters";a:0:{}s:4:"name";s:27:"tpl_preview__banner_preview";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:29:"tpl_preview__banner_show_code";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/banners.php";s:10:"parameters";a:0:{}s:4:"name";s:29:"tpl_preview__banner_show_code";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:48:"tpl_preview__administrative__banner_added_screen";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/banners.php";s:10:"parameters";a:0:{}s:4:"name";s:48:"tpl_preview__administrative__banner_added_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:33:"tpl_preview__block_main_top_sites";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/banners.php";s:10:"parameters";a:0:{}s:4:"name";s:33:"tpl_preview__block_main_top_sites";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:35:"tpl_preview__block_main_banner_wave";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/banners.php";s:10:"parameters";a:0:{}s:4:"name";s:35:"tpl_preview__block_main_banner_wave";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:25:"tpl_preview__banners_none";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/banners.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"tpl_preview__banners_none";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:25:"tpl_preview__banner_flash";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/banners.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"tpl_preview__banner_flash";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:25:"tpl_preview__banner_image";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/banners.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"tpl_preview__banner_image";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:26:"tpl_preview__banner_iframe";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/banners.php";s:10:"parameters";a:0:{}s:4:"name";s:26:"tpl_preview__banner_iframe";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:24:"tpl_preview__banner_text";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/banners.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"tpl_preview__banner_text";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:33:"tpl_preview__pointstore_banners_2";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/banners.php";s:10:"parameters";a:0:{}s:4:"name";s:33:"tpl_preview__pointstore_banners_2";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:39:"tpl_preview__pointstore_banners_upgrade";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/banners.php";s:10:"parameters";a:0:{}s:4:"name";s:39:"tpl_preview__pointstore_banners_upgrade";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:40:"tpl_preview__pointstore_banners_activate";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/banners.php";s:10:"parameters";a:0:{}s:4:"name";s:40:"tpl_preview__pointstore_banners_activate";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:38:"tpl_preview__pointstore_banners_screen";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/banners.php";s:10:"parameters";a:0:{}s:4:"name";s:38:"tpl_preview__pointstore_banners_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:47:"tpl_preview__administrative__banner_view_screen";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/banners.php";s:10:"parameters";a:0:{}s:4:"name";s:47:"tpl_preview__administrative__banner_view_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:27:"Hook_addon_registry_banners";s:7:"comment";b:1;}s:29:"Hook_addon_registry_bookmarks";a:3:{s:9:"functions";a:9:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/bookmarks.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/bookmarks.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/bookmarks.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/bookmarks.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/bookmarks.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/bookmarks.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/bookmarks.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/bookmarks.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:29:"tpl_preview__bookmarks_screen";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/bookmarks.php";s:10:"parameters";a:0:{}s:4:"name";s:29:"tpl_preview__bookmarks_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:29:"Hook_addon_registry_bookmarks";s:7:"comment";b:1;}s:31:"Hook_addon_registry_breadcrumbs";a:3:{s:9:"functions";a:7:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/breadcrumbs.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/breadcrumbs.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/breadcrumbs.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/breadcrumbs.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/breadcrumbs.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/breadcrumbs.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/breadcrumbs.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}}s:4:"name";s:31:"Hook_addon_registry_breadcrumbs";s:7:"comment";b:1;}s:28:"Hook_addon_registry_calendar";a:3:{s:9:"functions";a:18:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/calendar.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/calendar.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/calendar.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/calendar.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/calendar.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/calendar.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/calendar.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/calendar.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:31:"tpl_preview__calendar_year_view";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/calendar.php";s:10:"parameters";a:0:{}s:4:"name";s:31:"tpl_preview__calendar_year_view";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:32:"tpl_preview__calendar_month_view";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/calendar.php";s:10:"parameters";a:0:{}s:4:"name";s:32:"tpl_preview__calendar_month_view";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:31:"tpl_preview__calendar_week_view";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/calendar.php";s:10:"parameters";a:0:{}s:4:"name";s:31:"tpl_preview__calendar_week_view";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:30:"tpl_preview__calendar_day_view";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/calendar.php";s:10:"parameters";a:0:{}s:4:"name";s:30:"tpl_preview__calendar_day_view";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:32:"tpl_preview__block_side_calendar";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/calendar.php";s:10:"parameters";a:0:{}s:4:"name";s:32:"tpl_preview__block_side_calendar";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:40:"tpl_preview__block_side_calendar_listing";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/calendar.php";s:10:"parameters";a:0:{}s:4:"name";s:40:"tpl_preview__block_side_calendar_listing";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:36:"tpl_preview__calendar_event_conflict";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/calendar.php";s:10:"parameters";a:0:{}s:4:"name";s:36:"tpl_preview__calendar_event_conflict";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:31:"tpl_preview__calendar_event_box";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/calendar.php";s:10:"parameters";a:0:{}s:4:"name";s:31:"tpl_preview__calendar_event_box";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:20:"calendar_main_screen";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/calendar.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"view";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:10:"View type.";s:11:"phpdoc_name";s:4:"view";}}s:4:"name";s:20:"calendar_main_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:8:"Preview.";}}s:34:"tpl_preview__calendar_event_screen";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/calendar.php";s:10:"parameters";a:0:{}s:4:"name";s:34:"tpl_preview__calendar_event_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:28:"Hook_addon_registry_calendar";s:7:"comment";b:1;}s:27:"Hook_addon_registry_captcha";a:3:{s:9:"functions";a:9:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/captcha.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/captcha.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/captcha.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/captcha.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/captcha.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/captcha.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/captcha.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/captcha.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:38:"tpl_preview__form_screen_input_captcha";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/captcha.php";s:10:"parameters";a:0:{}s:4:"name";s:38:"tpl_preview__form_screen_input_captcha";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:27:"Hook_addon_registry_captcha";s:7:"comment";b:1;}s:30:"Hook_addon_registry_catalogues";a:3:{s:9:"functions";a:19:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/catalogues.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/catalogues.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/catalogues.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/catalogues.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/catalogues.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/catalogues.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/catalogues.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/catalogues.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:33:"tpl_preview__grid_category_screen";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/catalogues.php";s:10:"parameters";a:0:{}s:4:"name";s:33:"tpl_preview__grid_category_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:37:"tpl_preview__fieldmap_category_screen";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/catalogues.php";s:10:"parameters";a:0:{}s:4:"name";s:37:"tpl_preview__fieldmap_category_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:33:"tpl_preview__list_category_screen";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/catalogues.php";s:10:"parameters";a:0:{}s:4:"name";s:33:"tpl_preview__list_category_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:43:"tpl_preview__tabular_category_screen__links";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/catalogues.php";s:10:"parameters";a:0:{}s:4:"name";s:43:"tpl_preview__tabular_category_screen__links";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:36:"tpl_preview__tabular_category_screen";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/catalogues.php";s:10:"parameters";a:0:{}s:4:"name";s:36:"tpl_preview__tabular_category_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:25:"tpl_preview__entry_screen";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/catalogues.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"tpl_preview__entry_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:52:"tpl_preview__administrative__catalogue_adding_screen";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/catalogues.php";s:10:"parameters";a:0:{}s:4:"name";s:52:"tpl_preview__administrative__catalogue_adding_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:53:"tpl_preview__administrative__catalogue_editing_screen";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/catalogues.php";s:10:"parameters";a:0:{}s:4:"name";s:53:"tpl_preview__administrative__catalogue_editing_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:40:"tpl_preview__catalogue_entries_list_line";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/catalogues.php";s:10:"parameters";a:0:{}s:4:"name";s:40:"tpl_preview__catalogue_entries_list_line";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:43:"tpl_preview__catalogue_categories_list_line";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/catalogues.php";s:10:"parameters";a:0:{}s:4:"name";s:43:"tpl_preview__catalogue_categories_list_line";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:44:"tpl_preview__search_result_catalogue_entries";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/catalogues.php";s:10:"parameters";a:0:{}s:4:"name";s:44:"tpl_preview__search_result_catalogue_entries";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:30:"Hook_addon_registry_catalogues";s:7:"comment";b:1;}s:24:"Hook_addon_registry_chat";a:3:{s:9:"functions";a:20:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/chat.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/chat.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/chat.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/chat.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/chat.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/chat.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/chat.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/chat.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:39:"tpl_preview__cns_member_profile_friends";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/chat.php";s:10:"parameters";a:0:{}s:4:"name";s:39:"tpl_preview__cns_member_profile_friends";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:49:"tpl_preview__administrative__chat_moderate_screen";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/chat.php";s:10:"parameters";a:0:{}s:4:"name";s:49:"tpl_preview__administrative__chat_moderate_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:25:"tpl_preview__chat_message";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/chat.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"tpl_preview__chat_message";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:25:"tpl_preview__chat_private";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/chat.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"tpl_preview__chat_private";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:24:"tpl_preview__chat_invite";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/chat.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"tpl_preview__chat_invite";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:32:"tpl_preview__block_side_shoutbox";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/chat.php";s:10:"parameters";a:0:{}s:4:"name";s:32:"tpl_preview__block_side_shoutbox";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:29:"tpl_preview__chat_sitewide_im";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/chat.php";s:10:"parameters";a:0:{}s:4:"name";s:29:"tpl_preview__chat_sitewide_im";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:31:"tpl_preview__block_side_friends";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/chat.php";s:10:"parameters";a:0:{}s:4:"name";s:31:"tpl_preview__block_side_friends";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:30:"tpl_preview__chat_lobby_screen";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/chat.php";s:10:"parameters";a:0:{}s:4:"name";s:30:"tpl_preview__chat_lobby_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:29:"tpl_preview__chat_room_screen";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/chat.php";s:10:"parameters";a:0:{}s:4:"name";s:29:"tpl_preview__chat_room_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:36:"tpl_preview__chat_set_effects_screen";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/chat.php";s:10:"parameters";a:0:{}s:4:"name";s:36:"tpl_preview__chat_set_effects_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:35:"tpl_preview__chat_sitewide_im_popup";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/chat.php";s:10:"parameters";a:0:{}s:4:"name";s:35:"tpl_preview__chat_sitewide_im_popup";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:24:"Hook_addon_registry_chat";s:7:"comment";b:1;}s:31:"Hook_addon_registry_cns_avatars";a:3:{s:9:"functions";a:7:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/cns_avatars.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/cns_avatars.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/cns_avatars.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/cns_avatars.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/cns_avatars.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/cns_avatars.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/cns_avatars.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}}s:4:"name";s:31:"Hook_addon_registry_cns_avatars";s:7:"comment";b:1;}s:39:"Hook_addon_registry_cns_cartoon_avatars";a:3:{s:9:"functions";a:7:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:60:"sources/hooks/systems/addon_registry/cns_cartoon_avatars.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:60:"sources/hooks/systems/addon_registry/cns_cartoon_avatars.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:60:"sources/hooks/systems/addon_registry/cns_cartoon_avatars.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:60:"sources/hooks/systems/addon_registry/cns_cartoon_avatars.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:60:"sources/hooks/systems/addon_registry/cns_cartoon_avatars.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:60:"sources/hooks/systems/addon_registry/cns_cartoon_avatars.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:60:"sources/hooks/systems/addon_registry/cns_cartoon_avatars.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}}s:4:"name";s:39:"Hook_addon_registry_cns_cartoon_avatars";s:7:"comment";b:1;}s:29:"Hook_addon_registry_cns_clubs";a:3:{s:9:"functions";a:7:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/cns_clubs.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/cns_clubs.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/cns_clubs.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/cns_clubs.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/cns_clubs.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/cns_clubs.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/cns_clubs.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}}s:4:"name";s:29:"Hook_addon_registry_cns_clubs";s:7:"comment";b:1;}s:38:"Hook_addon_registry_cns_contact_member";a:3:{s:9:"functions";a:7:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/cns_contact_member.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/cns_contact_member.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/cns_contact_member.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/cns_contact_member.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/cns_contact_member.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/cns_contact_member.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/cns_contact_member.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}}s:4:"name";s:38:"Hook_addon_registry_cns_contact_member";s:7:"comment";b:1;}s:28:"Hook_addon_registry_cns_cpfs";a:3:{s:9:"functions";a:10:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/cns_cpfs.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/cns_cpfs.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/cns_cpfs.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/cns_cpfs.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/cns_cpfs.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/cns_cpfs.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/cns_cpfs.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/cns_cpfs.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:36:"tpl_preview__cns_cpf_permissions_tab";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/cns_cpfs.php";s:10:"parameters";a:0:{}s:4:"name";s:36:"tpl_preview__cns_cpf_permissions_tab";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:49:"tpl_preview__administrative__cns_cpf_stats_screen";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/cns_cpfs.php";s:10:"parameters";a:0:{}s:4:"name";s:49:"tpl_preview__administrative__cns_cpf_stats_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:28:"Hook_addon_registry_cns_cpfs";s:7:"comment";b:1;}s:29:"Hook_addon_registry_cns_forum";a:3:{s:9:"functions";a:36:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/cns_forum.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/cns_forum.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/cns_forum.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/cns_forum.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/cns_forum.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/cns_forum.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/cns_forum.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/cns_forum.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:33:"tpl_preview__cns_vforum_filtering";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/cns_forum.php";s:10:"parameters";a:0:{}s:4:"name";s:33:"tpl_preview__cns_vforum_filtering";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:35:"tpl_preview__cns_private_topic_link";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/cns_forum.php";s:10:"parameters";a:0:{}s:4:"name";s:35:"tpl_preview__cns_private_topic_link";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:50:"tpl_preview__administrative__cns_edit_forum_screen";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/cns_forum.php";s:10:"parameters";a:0:{}s:4:"name";s:50:"tpl_preview__administrative__cns_edit_forum_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:27:"tpl_preview__cns_rank_image";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/cns_forum.php";s:10:"parameters";a:0:{}s:4:"name";s:27:"tpl_preview__cns_rank_image";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:30:"tpl_preview__cns_isolated_post";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/cns_forum.php";s:10:"parameters";a:0:{}s:4:"name";s:30:"tpl_preview__cns_isolated_post";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:43:"tpl_preview__block_main_cns_involved_topics";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/cns_forum.php";s:10:"parameters";a:0:{}s:4:"name";s:43:"tpl_preview__block_main_cns_involved_topics";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:42:"tpl_preview__block_side_cns_private_topics";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/cns_forum.php";s:10:"parameters";a:0:{}s:4:"name";s:42:"tpl_preview__block_side_cns_private_topics";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:38:"tpl_preview__cns_forum_topic_list_line";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/cns_forum.php";s:10:"parameters";a:0:{}s:4:"name";s:38:"tpl_preview__cns_forum_topic_list_line";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:32:"tpl_preview__cns_forum_list_line";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/cns_forum.php";s:10:"parameters";a:0:{}s:4:"name";s:32:"tpl_preview__cns_forum_list_line";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:43:"tpl_preview__cns_forum_intro_question_popup";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/cns_forum.php";s:10:"parameters";a:0:{}s:4:"name";s:43:"tpl_preview__cns_forum_intro_question_popup";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:40:"tpl_preview__block_main_member_bar_guest";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/cns_forum.php";s:10:"parameters";a:0:{}s:4:"name";s:40:"tpl_preview__block_main_member_bar_guest";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:41:"tpl_preview__block_main_member_bar_search";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/cns_forum.php";s:10:"parameters";a:0:{}s:4:"name";s:41:"tpl_preview__block_main_member_bar_search";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:41:"tpl_preview__block_main_member_bar_member";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/cns_forum.php";s:10:"parameters";a:0:{}s:4:"name";s:41:"tpl_preview__block_main_member_bar_member";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:35:"tpl_preview__block_pt_notifications";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/cns_forum.php";s:10:"parameters";a:0:{}s:4:"name";s:35:"tpl_preview__block_pt_notifications";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:34:"tpl_preview__block_main_bottom_bar";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/cns_forum.php";s:10:"parameters";a:0:{}s:4:"name";s:34:"tpl_preview__block_main_bottom_bar";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:44:"tpl_preview__cns_forum_intro_question_screen";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/cns_forum.php";s:10:"parameters";a:0:{}s:4:"name";s:44:"tpl_preview__cns_forum_intro_question_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:22:"tpl_preview__cns_forum";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/cns_forum.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"tpl_preview__cns_forum";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:23:"tpl_preview__cns_vforum";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/cns_forum.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"tpl_preview__cns_vforum";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:38:"tpl_preview__cns_whisper_choice_screen";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/cns_forum.php";s:10:"parameters";a:0:{}s:4:"name";s:38:"tpl_preview__cns_whisper_choice_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:31:"tpl_preview__cns_quote_fcomcode";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/cns_forum.php";s:10:"parameters";a:0:{}s:4:"name";s:31:"tpl_preview__cns_quote_fcomcode";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:39:"tpl_preview__cns_member_pt_rules_screen";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/cns_forum.php";s:10:"parameters";a:0:{}s:4:"name";s:39:"tpl_preview__cns_member_pt_rules_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:37:"tpl_preview__cns_posting_screen_posts";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/cns_forum.php";s:10:"parameters";a:0:{}s:4:"name";s:37:"tpl_preview__cns_posting_screen_posts";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:37:"tpl_preview__cns_member_profile_posts";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/cns_forum.php";s:10:"parameters";a:0:{}s:4:"name";s:37:"tpl_preview__cns_member_profile_posts";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:35:"tpl_preview__cns_member_profile_pts";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/cns_forum.php";s:10:"parameters";a:0:{}s:4:"name";s:35:"tpl_preview__cns_member_profile_pts";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:48:"tpl_preview__cns_topic_not_voted_checkboxes_wrap";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/cns_forum.php";s:10:"parameters";a:0:{}s:4:"name";s:48:"tpl_preview__cns_topic_not_voted_checkboxes_wrap";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:43:"tpl_preview__cns_topic_not_voted_radio_wrap";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/cns_forum.php";s:10:"parameters";a:0:{}s:4:"name";s:43:"tpl_preview__cns_topic_not_voted_radio_wrap";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:33:"tpl_preview__cns_topic_voted_wrap";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/cns_forum.php";s:10:"parameters";a:0:{}s:4:"name";s:33:"tpl_preview__cns_topic_voted_wrap";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:30:"_tpl_preview__cns_topic_screen";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/cns_forum.php";s:10:"parameters";a:2:{i:0;a:5:{s:4:"name";s:5:"voted";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:44:"Whether to show for a has-voted-poll or not.";s:11:"phpdoc_name";s:5:"voted";}i:1;a:5:{s:4:"name";s:10:"checkboxes";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:79:"Whether to show checkboxes (as oppose to radio buttons). Irrelevant if !$voted.";s:11:"phpdoc_name";s:10:"checkboxes";}}s:4:"name";s:30:"_tpl_preview__cns_topic_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:29:"Hook_addon_registry_cns_forum";s:7:"comment";b:1;}s:38:"Hook_addon_registry_cns_member_avatars";a:3:{s:9:"functions";a:9:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/cns_member_avatars.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/cns_member_avatars.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/cns_member_avatars.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/cns_member_avatars.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/cns_member_avatars.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/cns_member_avatars.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/cns_member_avatars.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/cns_member_avatars.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:32:"tpl_preview__cns_edit_avatar_tab";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/cns_member_avatars.php";s:10:"parameters";a:0:{}s:4:"name";s:32:"tpl_preview__cns_edit_avatar_tab";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:38:"Hook_addon_registry_cns_member_avatars";s:7:"comment";b:1;}s:37:"Hook_addon_registry_cns_member_photos";a:3:{s:9:"functions";a:9:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:58:"sources/hooks/systems/addon_registry/cns_member_photos.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:58:"sources/hooks/systems/addon_registry/cns_member_photos.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:58:"sources/hooks/systems/addon_registry/cns_member_photos.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:58:"sources/hooks/systems/addon_registry/cns_member_photos.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:58:"sources/hooks/systems/addon_registry/cns_member_photos.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:58:"sources/hooks/systems/addon_registry/cns_member_photos.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:58:"sources/hooks/systems/addon_registry/cns_member_photos.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:58:"sources/hooks/systems/addon_registry/cns_member_photos.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:31:"tpl_preview__cns_edit_photo_tab";a:6:{s:8:"filename";s:58:"sources/hooks/systems/addon_registry/cns_member_photos.php";s:10:"parameters";a:0:{}s:4:"name";s:31:"tpl_preview__cns_edit_photo_tab";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:37:"Hook_addon_registry_cns_member_photos";s:7:"comment";b:1;}s:37:"Hook_addon_registry_cns_member_titles";a:3:{s:9:"functions";a:7:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:58:"sources/hooks/systems/addon_registry/cns_member_titles.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:58:"sources/hooks/systems/addon_registry/cns_member_titles.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:58:"sources/hooks/systems/addon_registry/cns_member_titles.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:58:"sources/hooks/systems/addon_registry/cns_member_titles.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:58:"sources/hooks/systems/addon_registry/cns_member_titles.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:58:"sources/hooks/systems/addon_registry/cns_member_titles.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:58:"sources/hooks/systems/addon_registry/cns_member_titles.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}}s:4:"name";s:37:"Hook_addon_registry_cns_member_titles";s:7:"comment";b:1;}s:41:"Hook_addon_registry_cns_multi_moderations";a:3:{s:9:"functions";a:7:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:62:"sources/hooks/systems/addon_registry/cns_multi_moderations.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:62:"sources/hooks/systems/addon_registry/cns_multi_moderations.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:62:"sources/hooks/systems/addon_registry/cns_multi_moderations.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:62:"sources/hooks/systems/addon_registry/cns_multi_moderations.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:62:"sources/hooks/systems/addon_registry/cns_multi_moderations.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:62:"sources/hooks/systems/addon_registry/cns_multi_moderations.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:62:"sources/hooks/systems/addon_registry/cns_multi_moderations.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}}s:4:"name";s:41:"Hook_addon_registry_cns_multi_moderations";s:7:"comment";b:1;}s:38:"Hook_addon_registry_cns_post_templates";a:3:{s:9:"functions";a:9:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/cns_post_templates.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/cns_post_templates.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/cns_post_templates.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/cns_post_templates.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/cns_post_templates.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/cns_post_templates.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/cns_post_templates.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/cns_post_templates.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:37:"tpl_preview__cns_post_template_select";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/cns_post_templates.php";s:10:"parameters";a:0:{}s:4:"name";s:37:"tpl_preview__cns_post_template_select";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:38:"Hook_addon_registry_cns_post_templates";s:7:"comment";b:1;}s:38:"Hook_addon_registry_cns_reported_posts";a:3:{s:9:"functions";a:9:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/cns_reported_posts.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/cns_reported_posts.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/cns_reported_posts.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/cns_reported_posts.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/cns_reported_posts.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/cns_reported_posts.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/cns_reported_posts.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/cns_reported_posts.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:39:"tpl_preview__cns_reported_post_fcomcode";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/cns_reported_posts.php";s:10:"parameters";a:0:{}s:4:"name";s:39:"tpl_preview__cns_reported_post_fcomcode";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:38:"Hook_addon_registry_cns_reported_posts";s:7:"comment";b:1;}s:34:"Hook_addon_registry_cns_signatures";a:3:{s:9:"functions";a:9:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:55:"sources/hooks/systems/addon_registry/cns_signatures.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:55:"sources/hooks/systems/addon_registry/cns_signatures.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:55:"sources/hooks/systems/addon_registry/cns_signatures.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:55:"sources/hooks/systems/addon_registry/cns_signatures.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:55:"sources/hooks/systems/addon_registry/cns_signatures.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:55:"sources/hooks/systems/addon_registry/cns_signatures.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:55:"sources/hooks/systems/addon_registry/cns_signatures.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:55:"sources/hooks/systems/addon_registry/cns_signatures.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:35:"tpl_preview__cns_edit_signature_tab";a:6:{s:8:"filename";s:55:"sources/hooks/systems/addon_registry/cns_signatures.php";s:10:"parameters";a:0:{}s:4:"name";s:35:"tpl_preview__cns_edit_signature_tab";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:34:"Hook_addon_registry_cns_signatures";s:7:"comment";b:1;}s:40:"Hook_addon_registry_cns_thematic_avatars";a:3:{s:9:"functions";a:7:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:61:"sources/hooks/systems/addon_registry/cns_thematic_avatars.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:61:"sources/hooks/systems/addon_registry/cns_thematic_avatars.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:61:"sources/hooks/systems/addon_registry/cns_thematic_avatars.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:61:"sources/hooks/systems/addon_registry/cns_thematic_avatars.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:61:"sources/hooks/systems/addon_registry/cns_thematic_avatars.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:61:"sources/hooks/systems/addon_registry/cns_thematic_avatars.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:61:"sources/hooks/systems/addon_registry/cns_thematic_avatars.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}}s:4:"name";s:40:"Hook_addon_registry_cns_thematic_avatars";s:7:"comment";b:1;}s:32:"Hook_addon_registry_cns_warnings";a:3:{s:9:"functions";a:11:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:53:"sources/hooks/systems/addon_registry/cns_warnings.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:53:"sources/hooks/systems/addon_registry/cns_warnings.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:53:"sources/hooks/systems/addon_registry/cns_warnings.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:53:"sources/hooks/systems/addon_registry/cns_warnings.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:53:"sources/hooks/systems/addon_registry/cns_warnings.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:53:"sources/hooks/systems/addon_registry/cns_warnings.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:53:"sources/hooks/systems/addon_registry/cns_warnings.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:53:"sources/hooks/systems/addon_registry/cns_warnings.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:40:"tpl_preview__cns_member_profile_warnings";a:6:{s:8:"filename";s:53:"sources/hooks/systems/addon_registry/cns_warnings.php";s:10:"parameters";a:0:{}s:4:"name";s:40:"tpl_preview__cns_member_profile_warnings";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:30:"tpl_preview__cns_saved_warning";a:6:{s:8:"filename";s:53:"sources/hooks/systems/addon_registry/cns_warnings.php";s:10:"parameters";a:0:{}s:4:"name";s:30:"tpl_preview__cns_saved_warning";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:55:"tpl_preview__administrative__cns_warning_history_screen";a:6:{s:8:"filename";s:53:"sources/hooks/systems/addon_registry/cns_warnings.php";s:10:"parameters";a:0:{}s:4:"name";s:55:"tpl_preview__administrative__cns_warning_history_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:32:"Hook_addon_registry_cns_warnings";s:7:"comment";b:1;}s:31:"Hook_addon_registry_code_editor";a:3:{s:9:"functions";a:7:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/code_editor.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/code_editor.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/code_editor.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/code_editor.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/code_editor.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/code_editor.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/code_editor.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}}s:4:"name";s:31:"Hook_addon_registry_code_editor";s:7:"comment";b:1;}s:38:"Hook_addon_registry_collaboration_zone";a:3:{s:9:"functions";a:7:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/collaboration_zone.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/collaboration_zone.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/collaboration_zone.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/collaboration_zone.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/collaboration_zone.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/collaboration_zone.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/collaboration_zone.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}}s:4:"name";s:38:"Hook_addon_registry_collaboration_zone";s:7:"comment";b:1;}s:28:"Hook_addon_registry_commandr";a:3:{s:9:"functions";a:26:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/commandr.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/commandr.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/commandr.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/commandr.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/commandr.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/commandr.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/commandr.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/commandr.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:42:"tpl_preview__administrative__commandr_main";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/commandr.php";s:10:"parameters";a:0:{}s:4:"name";s:42:"tpl_preview__administrative__commandr_main";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:49:"tpl_preview__administrative__commandr_main_screen";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/commandr.php";s:10:"parameters";a:0:{}s:4:"name";s:49:"tpl_preview__administrative__commandr_main_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:45:"tpl_preview__administrative__commandr_command";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/commandr.php";s:10:"parameters";a:0:{}s:4:"name";s:45:"tpl_preview__administrative__commandr_command";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:43:"tpl_preview__administrative__commandr_array";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/commandr.php";s:10:"parameters";a:0:{}s:4:"name";s:43:"tpl_preview__administrative__commandr_array";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:42:"tpl_preview__administrative__commandr_help";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/commandr.php";s:10:"parameters";a:0:{}s:4:"name";s:42:"tpl_preview__administrative__commandr_help";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:41:"tpl_preview__administrative__commandr_box";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/commandr.php";s:10:"parameters";a:0:{}s:4:"name";s:41:"tpl_preview__administrative__commandr_box";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:46:"tpl_preview__administrative__commandr_commands";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/commandr.php";s:10:"parameters";a:0:{}s:4:"name";s:46:"tpl_preview__administrative__commandr_commands";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:41:"tpl_preview__administrative__commandr_rss";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/commandr.php";s:10:"parameters";a:0:{}s:4:"name";s:41:"tpl_preview__administrative__commandr_rss";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:42:"tpl_preview__administrative__commandr_edit";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/commandr.php";s:10:"parameters";a:0:{}s:4:"name";s:42:"tpl_preview__administrative__commandr_edit";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:50:"tpl_preview__administrative__commandr_users_online";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/commandr.php";s:10:"parameters";a:0:{}s:4:"name";s:50:"tpl_preview__administrative__commandr_users_online";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:48:"tpl_preview__administrative__commandr_find_codes";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/commandr.php";s:10:"parameters";a:0:{}s:4:"name";s:48:"tpl_preview__administrative__commandr_find_codes";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:43:"tpl_preview__administrative__commandr_whois";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/commandr.php";s:10:"parameters";a:0:{}s:4:"name";s:43:"tpl_preview__administrative__commandr_whois";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:50:"tpl_preview__administrative__commandr_entry_points";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/commandr.php";s:10:"parameters";a:0:{}s:4:"name";s:50:"tpl_preview__administrative__commandr_entry_points";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:40:"tpl_preview__administrative__commandr_ls";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/commandr.php";s:10:"parameters";a:0:{}s:4:"name";s:40:"tpl_preview__administrative__commandr_ls";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:55:"tpl_preview__administrative__commandr_chat_notification";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/commandr.php";s:10:"parameters";a:0:{}s:4:"name";s:55:"tpl_preview__administrative__commandr_chat_notification";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:63:"tpl_preview__administrative__commandr_commandrchat_notification";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/commandr.php";s:10:"parameters";a:0:{}s:4:"name";s:63:"tpl_preview__administrative__commandr_commandrchat_notification";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:54:"tpl_preview__administrative__commandr_cns_notification";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/commandr.php";s:10:"parameters";a:0:{}s:4:"name";s:54:"tpl_preview__administrative__commandr_cns_notification";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:53:"tpl_preview__administrative__commandr_pt_notification";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/commandr.php";s:10:"parameters";a:0:{}s:4:"name";s:53:"tpl_preview__administrative__commandr_pt_notification";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:28:"Hook_addon_registry_commandr";s:7:"comment";b:1;}s:35:"Hook_addon_registry_content_privacy";a:3:{s:9:"functions";a:7:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/content_privacy.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/content_privacy.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/content_privacy.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/content_privacy.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/content_privacy.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/content_privacy.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/content_privacy.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}}s:4:"name";s:35:"Hook_addon_registry_content_privacy";s:7:"comment";b:1;}s:35:"Hook_addon_registry_content_reviews";a:3:{s:9:"functions";a:9:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/content_reviews.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/content_reviews.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/content_reviews.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/content_reviews.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/content_reviews.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/content_reviews.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/content_reviews.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/content_reviews.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:26:"tpl_preview__review_status";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/content_reviews.php";s:10:"parameters";a:0:{}s:4:"name";s:26:"tpl_preview__review_status";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:35:"Hook_addon_registry_content_reviews";s:7:"comment";b:1;}s:24:"Hook_addon_registry_core";a:3:{s:9:"functions";a:49:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/core.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/core.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/core.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/core.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/core.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/core.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/core.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/core.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:31:"tpl_preview__block_main_content";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/core.php";s:10:"parameters";a:0:{}s:4:"name";s:31:"tpl_preview__block_main_content";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:37:"tpl_preview__block_main_multi_content";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/core.php";s:10:"parameters";a:0:{}s:4:"name";s:37:"tpl_preview__block_main_multi_content";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:29:"tpl_preview__email_log_screen";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/core.php";s:10:"parameters";a:0:{}s:4:"name";s:29:"tpl_preview__email_log_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:51:"tpl_preview__administrative__actionlogs_toggle_link";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/core.php";s:10:"parameters";a:0:{}s:4:"name";s:51:"tpl_preview__administrative__actionlogs_toggle_link";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:46:"tpl_preview__administrative__actionlogs_screen";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/core.php";s:10:"parameters";a:0:{}s:4:"name";s:46:"tpl_preview__administrative__actionlogs_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:25:"tpl_preview__login_screen";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/core.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"tpl_preview__login_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:40:"tpl_preview__redirect_post_method_screen";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/core.php";s:10:"parameters";a:0:{}s:4:"name";s:40:"tpl_preview__redirect_post_method_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:25:"tpl_preview__forums_embed";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/core.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"tpl_preview__forums_embed";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:21:"tpl_preview__js_block";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/core.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"tpl_preview__js_block";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:28:"tpl_preview__javascript_need";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/core.php";s:10:"parameters";a:0:{}s:4:"name";s:28:"tpl_preview__javascript_need";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:33:"tpl_preview__javascript_need_full";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/core.php";s:10:"parameters";a:0:{}s:4:"name";s:33:"tpl_preview__javascript_need_full";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:35:"tpl_preview__javascript_need_inline";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/core.php";s:10:"parameters";a:0:{}s:4:"name";s:35:"tpl_preview__javascript_need_inline";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:21:"tpl_preview__css_need";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/core.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"tpl_preview__css_need";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:26:"tpl_preview__css_need_full";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/core.php";s:10:"parameters";a:0:{}s:4:"name";s:26:"tpl_preview__css_need_full";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:28:"tpl_preview__css_need_inline";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/core.php";s:10:"parameters";a:0:{}s:4:"name";s:28:"tpl_preview__css_need_inline";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:41:"tpl_preview__administrative__fatal_screen";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/core.php";s:10:"parameters";a:0:{}s:4:"name";s:41:"tpl_preview__administrative__fatal_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:40:"tpl_preview__administrative__stack_trace";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/core.php";s:10:"parameters";a:0:{}s:4:"name";s:40:"tpl_preview__administrative__stack_trace";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:31:"tpl_preview__inline_wip_message";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/core.php";s:10:"parameters";a:0:{}s:4:"name";s:31:"tpl_preview__inline_wip_message";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:27:"tpl_preview__missing_screen";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/core.php";s:10:"parameters";a:0:{}s:4:"name";s:27:"tpl_preview__missing_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:23:"tpl_preview__param_info";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/core.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"tpl_preview__param_info";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:38:"tpl_preview__block_side_personal_stats";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/core.php";s:10:"parameters";a:0:{}s:4:"name";s:38:"tpl_preview__block_side_personal_stats";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:37:"tpl_preview__block_top_personal_stats";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/core.php";s:10:"parameters";a:0:{}s:4:"name";s:37:"tpl_preview__block_top_personal_stats";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:41:"tpl_preview__block_side_personal_stats_no";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/core.php";s:10:"parameters";a:0:{}s:4:"name";s:41:"tpl_preview__block_side_personal_stats_no";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:28:"tpl_preview__block_top_login";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/core.php";s:10:"parameters";a:0:{}s:4:"name";s:28:"tpl_preview__block_top_login";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:25:"tpl_preview__nothing_here";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/core.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"tpl_preview__nothing_here";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:38:"tpl_preview__block_main_emoticon_codes";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/core.php";s:10:"parameters";a:0:{}s:4:"name";s:38:"tpl_preview__block_main_emoticon_codes";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:45:"tpl_preview__block_main_comcode_page_children";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/core.php";s:10:"parameters";a:0:{}s:4:"name";s:45:"tpl_preview__block_main_comcode_page_children";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:41:"tpl_preview__administrative__query_screen";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/core.php";s:10:"parameters";a:0:{}s:4:"name";s:41:"tpl_preview__administrative__query_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:40:"tpl_preview__administrative__broken_urls";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/core.php";s:10:"parameters";a:0:{}s:4:"name";s:40:"tpl_preview__administrative__broken_urls";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:48:"tpl_preview__administrative__broken_lang_strings";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/core.php";s:10:"parameters";a:0:{}s:4:"name";s:48:"tpl_preview__administrative__broken_lang_strings";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:35:"tpl_preview__forum_attachment_image";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/core.php";s:10:"parameters";a:0:{}s:4:"name";s:35:"tpl_preview__forum_attachment_image";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:34:"tpl_preview__forum_attachment_link";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/core.php";s:10:"parameters";a:0:{}s:4:"name";s:34:"tpl_preview__forum_attachment_link";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:42:"tpl_preview__administrative__tempcode_test";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/core.php";s:10:"parameters";a:0:{}s:4:"name";s:42:"tpl_preview__administrative__tempcode_test";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:23:"tpl_preview__font_sizer";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/core.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"tpl_preview__font_sizer";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:31:"tpl_preview__mass_select_marker";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/core.php";s:10:"parameters";a:0:{}s:4:"name";s:31:"tpl_preview__mass_select_marker";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:36:"tpl_preview__mass_select_delete_form";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/core.php";s:10:"parameters";a:0:{}s:4:"name";s:36:"tpl_preview__mass_select_delete_form";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:37:"tpl_preview__mass_select_form_buttons";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/core.php";s:10:"parameters";a:0:{}s:4:"name";s:37:"tpl_preview__mass_select_form_buttons";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:41:"tpl_preview__block_main_content_filtering";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/core.php";s:10:"parameters";a:0:{}s:4:"name";s:41:"tpl_preview__block_main_content_filtering";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:44:"tpl_preview__upload_syndication_setup_screen";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/core.php";s:10:"parameters";a:0:{}s:4:"name";s:44:"tpl_preview__upload_syndication_setup_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:47:"tpl_preview__group_member_timeout_manage_screen";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/core.php";s:10:"parameters";a:0:{}s:4:"name";s:47:"tpl_preview__group_member_timeout_manage_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:28:"tpl_preview__sponsors_screen";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/core.php";s:10:"parameters";a:0:{}s:4:"name";s:28:"tpl_preview__sponsors_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:24:"Hook_addon_registry_core";s:7:"comment";b:1;}s:44:"Hook_addon_registry_core_abstract_components";a:3:{s:9:"functions";a:19:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_abstract_components.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_abstract_components.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_abstract_components.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_abstract_components.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_abstract_components.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_abstract_components.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_abstract_components.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_abstract_components.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:26:"tpl_preview__staff_actions";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_abstract_components.php";s:10:"parameters";a:0:{}s:4:"name";s:26:"tpl_preview__staff_actions";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:31:"tpl_preview__button_screen_item";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_abstract_components.php";s:10:"parameters";a:0:{}s:4:"name";s:31:"tpl_preview__button_screen_item";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:44:"tpl_preview__administrative__fractional_edit";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_abstract_components.php";s:10:"parameters";a:0:{}s:4:"name";s:44:"tpl_preview__administrative__fractional_edit";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:40:"tpl_preview__crop_text_mouse_over_inline";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_abstract_components.php";s:10:"parameters";a:0:{}s:4:"name";s:40:"tpl_preview__crop_text_mouse_over_inline";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:22:"tpl_preview__img_thumb";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_abstract_components.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"tpl_preview__img_thumb";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:33:"tpl_preview__crop_text_mouse_over";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_abstract_components.php";s:10:"parameters";a:0:{}s:4:"name";s:33:"tpl_preview__crop_text_mouse_over";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:26:"tpl_preview__button_screen";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_abstract_components.php";s:10:"parameters";a:0:{}s:4:"name";s:26:"tpl_preview__button_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:32:"tpl_preview__standardbox_default";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_abstract_components.php";s:10:"parameters";a:0:{}s:4:"name";s:32:"tpl_preview__standardbox_default";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:34:"tpl_preview__standardbox_accordion";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_abstract_components.php";s:10:"parameters";a:0:{}s:4:"name";s:34:"tpl_preview__standardbox_accordion";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:25:"_tpl_preview__standardbox";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_abstract_components.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:4:"type";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:10:"View type.";s:11:"phpdoc_name";s:4:"type";}}s:4:"name";s:25:"_tpl_preview__standardbox";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:55:"tpl_preview__administrative__handle_conflict_resolution";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_abstract_components.php";s:10:"parameters";a:0:{}s:4:"name";s:55:"tpl_preview__administrative__handle_conflict_resolution";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:44:"Hook_addon_registry_core_abstract_components";s:7:"comment";b:1;}s:44:"Hook_addon_registry_core_abstract_interfaces";a:3:{s:9:"functions";a:33:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_abstract_interfaces.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_abstract_interfaces.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_abstract_interfaces.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_abstract_interfaces.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_abstract_interfaces.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_abstract_interfaces.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_abstract_interfaces.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_abstract_interfaces.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:28:"tpl_preview__ajax_pagination";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_abstract_interfaces.php";s:10:"parameters";a:0:{}s:4:"name";s:28:"tpl_preview__ajax_pagination";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:60:"tpl_preview__administrative__columned_table_action_translate";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_abstract_interfaces.php";s:10:"parameters";a:0:{}s:4:"name";s:60:"tpl_preview__administrative__columned_table_action_translate";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:43:"tpl_preview__columned_table_action_download";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_abstract_interfaces.php";s:10:"parameters";a:0:{}s:4:"name";s:43:"tpl_preview__columned_table_action_download";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:28:"tpl_preview__redirect_screen";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_abstract_interfaces.php";s:10:"parameters";a:0:{}s:4:"name";s:28:"tpl_preview__redirect_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:27:"tpl_preview__confirm_screen";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_abstract_interfaces.php";s:10:"parameters";a:0:{}s:4:"name";s:27:"tpl_preview__confirm_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:25:"tpl_preview__index_screen";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_abstract_interfaces.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"tpl_preview__index_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:40:"tpl_preview__index_screen_fancier_screen";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_abstract_interfaces.php";s:10:"parameters";a:0:{}s:4:"name";s:40:"tpl_preview__index_screen_fancier_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:22:"tpl_preview__map_table";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_abstract_interfaces.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"tpl_preview__map_table";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:29:"tpl_preview__map_table_screen";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_abstract_interfaces.php";s:10:"parameters";a:0:{}s:4:"name";s:29:"tpl_preview__map_table_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:50:"tpl_preview__columned_table_action_delete_category";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_abstract_interfaces.php";s:10:"parameters";a:0:{}s:4:"name";s:50:"tpl_preview__columned_table_action_delete_category";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:24:"tpl_preview__warning_box";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_abstract_interfaces.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"tpl_preview__warning_box";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:31:"tpl_preview__simple_preview_box";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_abstract_interfaces.php";s:10:"parameters";a:0:{}s:4:"name";s:31:"tpl_preview__simple_preview_box";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:26:"tpl_preview__inform_screen";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_abstract_interfaces.php";s:10:"parameters";a:0:{}s:4:"name";s:26:"tpl_preview__inform_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:37:"tpl_preview__internalised_ajax_screen";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_abstract_interfaces.php";s:10:"parameters";a:0:{}s:4:"name";s:37:"tpl_preview__internalised_ajax_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:24:"tpl_preview__warn_screen";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_abstract_interfaces.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"tpl_preview__warn_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:43:"tpl_preview__administrative__do_next_screen";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_abstract_interfaces.php";s:10:"parameters";a:0:{}s:4:"name";s:43:"tpl_preview__administrative__do_next_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:32:"tpl_preview__question_ui_buttons";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_abstract_interfaces.php";s:10:"parameters";a:0:{}s:4:"name";s:32:"tpl_preview__question_ui_buttons";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:30:"tpl_preview__pagination_screen";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_abstract_interfaces.php";s:10:"parameters";a:0:{}s:4:"name";s:30:"tpl_preview__pagination_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:32:"tpl_preview__full_message_screen";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_abstract_interfaces.php";s:10:"parameters";a:0:{}s:4:"name";s:32:"tpl_preview__full_message_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:30:"tpl_preview__full_table_screen";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_abstract_interfaces.php";s:10:"parameters";a:0:{}s:4:"name";s:30:"tpl_preview__full_table_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:32:"tpl_preview__result_table_screen";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_abstract_interfaces.php";s:10:"parameters";a:0:{}s:4:"name";s:32:"tpl_preview__result_table_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:34:"tpl_preview__result_table_screen_2";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_abstract_interfaces.php";s:10:"parameters";a:0:{}s:4:"name";s:34:"tpl_preview__result_table_screen_2";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:35:"tpl_preview__result_launcher_screen";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_abstract_interfaces.php";s:10:"parameters";a:0:{}s:4:"name";s:35:"tpl_preview__result_launcher_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:50:"tpl_preview__administrative__columned_table_screen";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_abstract_interfaces.php";s:10:"parameters";a:0:{}s:4:"name";s:50:"tpl_preview__administrative__columned_table_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:27:"tpl_preview__member_tooltip";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_abstract_interfaces.php";s:10:"parameters";a:0:{}s:4:"name";s:27:"tpl_preview__member_tooltip";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:44:"Hook_addon_registry_core_abstract_interfaces";s:7:"comment";b:1;}s:41:"Hook_addon_registry_core_addon_management";a:3:{s:9:"functions";a:14:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:62:"sources/hooks/systems/addon_registry/core_addon_management.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:62:"sources/hooks/systems/addon_registry/core_addon_management.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:62:"sources/hooks/systems/addon_registry/core_addon_management.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:62:"sources/hooks/systems/addon_registry/core_addon_management.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:62:"sources/hooks/systems/addon_registry/core_addon_management.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:62:"sources/hooks/systems/addon_registry/core_addon_management.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:62:"sources/hooks/systems/addon_registry/core_addon_management.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:62:"sources/hooks/systems/addon_registry/core_addon_management.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:41:"tpl_preview__administrative__addon_screen";a:6:{s:8:"filename";s:62:"sources/hooks/systems/addon_registry/core_addon_management.php";s:10:"parameters";a:0:{}s:4:"name";s:41:"tpl_preview__administrative__addon_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:55:"tpl_preview__administrative__addon_multi_confirm_screen";a:6:{s:8:"filename";s:62:"sources/hooks/systems/addon_registry/core_addon_management.php";s:10:"parameters";a:0:{}s:4:"name";s:55:"tpl_preview__administrative__addon_multi_confirm_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:57:"tpl_preview__administrative__addon_install_confirm_screen";a:6:{s:8:"filename";s:62:"sources/hooks/systems/addon_registry/core_addon_management.php";s:10:"parameters";a:0:{}s:4:"name";s:57:"tpl_preview__administrative__addon_install_confirm_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:59:"tpl_preview__administrative__addon_uninstall_confirm_screen";a:6:{s:8:"filename";s:62:"sources/hooks/systems/addon_registry/core_addon_management.php";s:10:"parameters";a:0:{}s:4:"name";s:59:"tpl_preview__administrative__addon_uninstall_confirm_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:48:"tpl_preview__administrative__addon_export_screen";a:6:{s:8:"filename";s:62:"sources/hooks/systems/addon_registry/core_addon_management.php";s:10:"parameters";a:0:{}s:4:"name";s:48:"tpl_preview__administrative__addon_export_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:42:"tpl_preview__administrative__module_screen";a:6:{s:8:"filename";s:62:"sources/hooks/systems/addon_registry/core_addon_management.php";s:10:"parameters";a:0:{}s:4:"name";s:42:"tpl_preview__administrative__module_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:41:"Hook_addon_registry_core_addon_management";s:7:"comment";b:1;}s:44:"Hook_addon_registry_core_adminzone_dashboard";a:3:{s:9:"functions";a:15:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_adminzone_dashboard.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_adminzone_dashboard.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_adminzone_dashboard.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_adminzone_dashboard.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_adminzone_dashboard.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_adminzone_dashboard.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_adminzone_dashboard.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_adminzone_dashboard.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:64:"tpl_preview__administrative__block_main_staff_website_monitoring";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_adminzone_dashboard.php";s:10:"parameters";a:0:{}s:4:"name";s:64:"tpl_preview__administrative__block_main_staff_website_monitoring";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:51:"tpl_preview__administrative__block_main_staff_links";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_adminzone_dashboard.php";s:10:"parameters";a:0:{}s:4:"name";s:51:"tpl_preview__administrative__block_main_staff_links";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:29:"tpl_preview__block_main_notes";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_adminzone_dashboard.php";s:10:"parameters";a:0:{}s:4:"name";s:29:"tpl_preview__block_main_notes";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:55:"tpl_preview__administrative__block_main_staff_checklist";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_adminzone_dashboard.php";s:10:"parameters";a:0:{}s:4:"name";s:55:"tpl_preview__administrative__block_main_staff_checklist";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:57:"tpl_preview__administrative__block_main_staff_new_version";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_adminzone_dashboard.php";s:10:"parameters";a:0:{}s:4:"name";s:57:"tpl_preview__administrative__block_main_staff_new_version";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:50:"tpl_preview__administrative__block_main_staff_tips";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_adminzone_dashboard.php";s:10:"parameters";a:0:{}s:4:"name";s:50:"tpl_preview__administrative__block_main_staff_tips";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:53:"tpl_preview__administrative__block_main_staff_actions";a:6:{s:8:"filename";s:65:"sources/hooks/systems/addon_registry/core_adminzone_dashboard.php";s:10:"parameters";a:0:{}s:4:"name";s:53:"tpl_preview__administrative__block_main_staff_actions";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:44:"Hook_addon_registry_core_adminzone_dashboard";s:7:"comment";b:1;}s:38:"Hook_addon_registry_core_cleanup_tools";a:3:{s:9:"functions";a:9:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/core_cleanup_tools.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/core_cleanup_tools.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/core_cleanup_tools.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/core_cleanup_tools.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/core_cleanup_tools.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/core_cleanup_tools.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/core_cleanup_tools.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/core_cleanup_tools.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:53:"tpl_preview__administrative__cleanup_completed_screen";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/core_cleanup_tools.php";s:10:"parameters";a:0:{}s:4:"name";s:53:"tpl_preview__administrative__cleanup_completed_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:38:"Hook_addon_registry_core_cleanup_tools";s:7:"comment";b:1;}s:28:"Hook_addon_registry_core_cns";a:3:{s:9:"functions";a:23:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/core_cns.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/core_cns.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/core_cns.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/core_cns.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/core_cns.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/core_cns.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/core_cns.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/core_cns.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:47:"tpl_preview__administrative__cns_delurk_confirm";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/core_cns.php";s:10:"parameters";a:0:{}s:4:"name";s:47:"tpl_preview__administrative__cns_delurk_confirm";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:34:"tpl_preview__cns_join_step1_screen";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/core_cns.php";s:10:"parameters";a:0:{}s:4:"name";s:34:"tpl_preview__cns_join_step1_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:34:"tpl_preview__cns_join_step2_screen";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/core_cns.php";s:10:"parameters";a:0:{}s:4:"name";s:34:"tpl_preview__cns_join_step2_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:37:"tpl_preview__cns_auto_time_zone_entry";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/core_cns.php";s:10:"parameters";a:0:{}s:4:"name";s:37:"tpl_preview__cns_auto_time_zone_entry";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:28:"tpl_preview__cns_user_member";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/core_cns.php";s:10:"parameters";a:0:{}s:4:"name";s:28:"tpl_preview__cns_user_member";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:31:"tpl_preview__cns_emoticon_table";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/core_cns.php";s:10:"parameters";a:0:{}s:4:"name";s:31:"tpl_preview__cns_emoticon_table";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:47:"tpl_preview__cns_member_directory_screen_filter";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/core_cns.php";s:10:"parameters";a:0:{}s:4:"name";s:47:"tpl_preview__cns_member_directory_screen_filter";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:42:"tpl_preview__cns_member_directory_username";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/core_cns.php";s:10:"parameters";a:0:{}s:4:"name";s:42:"tpl_preview__cns_member_directory_username";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:40:"tpl_preview__cns_member_directory_screen";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/core_cns.php";s:10:"parameters";a:0:{}s:4:"name";s:40:"tpl_preview__cns_member_directory_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:31:"tpl_preview__block_main_members";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/core_cns.php";s:10:"parameters";a:0:{}s:4:"name";s:31:"tpl_preview__block_main_members";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:38:"tpl_preview__cns_member_profile_screen";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/core_cns.php";s:10:"parameters";a:0:{}s:4:"name";s:38:"tpl_preview__cns_member_profile_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:36:"tpl_preview__cns_users_online_screen";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/core_cns.php";s:10:"parameters";a:0:{}s:4:"name";s:36:"tpl_preview__cns_users_online_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:39:"tpl_preview__cns_group_directory_screen";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/core_cns.php";s:10:"parameters";a:0:{}s:4:"name";s:39:"tpl_preview__cns_group_directory_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:34:"tpl_preview__cns_view_group_screen";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/core_cns.php";s:10:"parameters";a:0:{}s:4:"name";s:34:"tpl_preview__cns_view_group_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:25:"tpl_preview__cns_post_map";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/core_cns.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"tpl_preview__cns_post_map";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:28:"Hook_addon_registry_core_cns";s:7:"comment";b:1;}s:38:"Hook_addon_registry_core_comcode_pages";a:3:{s:9:"functions";a:13:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/core_comcode_pages.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/core_comcode_pages.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/core_comcode_pages.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/core_comcode_pages.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/core_comcode_pages.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/core_comcode_pages.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/core_comcode_pages.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/core_comcode_pages.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:55:"tpl_preview__administrative__comcode_page_manage_screen";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/core_comcode_pages.php";s:10:"parameters";a:0:{}s:4:"name";s:55:"tpl_preview__administrative__comcode_page_manage_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:38:"tpl_preview__comcode_page_edit_actions";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/core_comcode_pages.php";s:10:"parameters";a:0:{}s:4:"name";s:38:"tpl_preview__comcode_page_edit_actions";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:32:"tpl_preview__comcode_page_screen";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/core_comcode_pages.php";s:10:"parameters";a:0:{}s:4:"name";s:32:"tpl_preview__comcode_page_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:33:"tpl_preview__comcode_page_preview";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/core_comcode_pages.php";s:10:"parameters";a:0:{}s:4:"name";s:33:"tpl_preview__comcode_page_preview";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:49:"tpl_preview__administrative__comcode_page_sitemap";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/core_comcode_pages.php";s:10:"parameters";a:0:{}s:4:"name";s:49:"tpl_preview__administrative__comcode_page_sitemap";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:38:"Hook_addon_registry_core_comcode_pages";s:7:"comment";b:1;}s:38:"Hook_addon_registry_core_configuration";a:3:{s:9:"functions";a:10:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/core_configuration.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/core_configuration.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/core_configuration.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/core_configuration.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/core_configuration.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/core_configuration.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/core_configuration.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/core_configuration.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:51:"tpl_preview__administrative__config_category_screen";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/core_configuration.php";s:10:"parameters";a:0:{}s:4:"name";s:51:"tpl_preview__administrative__config_category_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:46:"tpl_preview__administrative__xml_config_screen";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/core_configuration.php";s:10:"parameters";a:0:{}s:4:"name";s:46:"tpl_preview__administrative__xml_config_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:38:"Hook_addon_registry_core_configuration";s:7:"comment";b:1;}s:41:"Hook_addon_registry_core_database_drivers";a:3:{s:9:"functions";a:7:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:62:"sources/hooks/systems/addon_registry/core_database_drivers.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:62:"sources/hooks/systems/addon_registry/core_database_drivers.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:62:"sources/hooks/systems/addon_registry/core_database_drivers.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:62:"sources/hooks/systems/addon_registry/core_database_drivers.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:62:"sources/hooks/systems/addon_registry/core_database_drivers.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:62:"sources/hooks/systems/addon_registry/core_database_drivers.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:62:"sources/hooks/systems/addon_registry/core_database_drivers.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}}s:4:"name";s:41:"Hook_addon_registry_core_database_drivers";s:7:"comment";b:1;}s:42:"Hook_addon_registry_core_feedback_features";a:3:{s:9:"functions";a:20:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:63:"sources/hooks/systems/addon_registry/core_feedback_features.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:63:"sources/hooks/systems/addon_registry/core_feedback_features.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:63:"sources/hooks/systems/addon_registry/core_feedback_features.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:63:"sources/hooks/systems/addon_registry/core_feedback_features.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:63:"sources/hooks/systems/addon_registry/core_feedback_features.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:63:"sources/hooks/systems/addon_registry/core_feedback_features.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:63:"sources/hooks/systems/addon_registry/core_feedback_features.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:63:"sources/hooks/systems/addon_registry/core_feedback_features.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:34:"tpl_preview__comments_default_text";a:6:{s:8:"filename";s:63:"sources/hooks/systems/addon_registry/core_feedback_features.php";s:10:"parameters";a:0:{}s:4:"name";s:34:"tpl_preview__comments_default_text";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:52:"tpl_preview__administrative__trackback_delete_screen";a:6:{s:8:"filename";s:63:"sources/hooks/systems/addon_registry/core_feedback_features.php";s:10:"parameters";a:0:{}s:4:"name";s:52:"tpl_preview__administrative__trackback_delete_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:34:"tpl_preview__trackback_xml_wrapper";a:6:{s:8:"filename";s:63:"sources/hooks/systems/addon_registry/core_feedback_features.php";s:10:"parameters";a:0:{}s:4:"name";s:34:"tpl_preview__trackback_xml_wrapper";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:21:"tpl_preview__comments";a:6:{s:8:"filename";s:63:"sources/hooks/systems/addon_registry/core_feedback_features.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"tpl_preview__comments";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:29:"tpl_preview__comments_wrapper";a:6:{s:8:"filename";s:63:"sources/hooks/systems/addon_registry/core_feedback_features.php";s:10:"parameters";a:0:{}s:4:"name";s:29:"tpl_preview__comments_wrapper";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:30:"tpl_preview__trackback_wrapper";a:6:{s:8:"filename";s:63:"sources/hooks/systems/addon_registry/core_feedback_features.php";s:10:"parameters";a:0:{}s:4:"name";s:30:"tpl_preview__trackback_wrapper";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:34:"tpl_preview__trackback_xml_listing";a:6:{s:8:"filename";s:63:"sources/hooks/systems/addon_registry/core_feedback_features.php";s:10:"parameters";a:0:{}s:4:"name";s:34:"tpl_preview__trackback_xml_listing";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:19:"tpl_preview__rating";a:6:{s:8:"filename";s:63:"sources/hooks/systems/addon_registry/core_feedback_features.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"tpl_preview__rating";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:33:"tpl_preview__rating_inline_static";a:6:{s:8:"filename";s:63:"sources/hooks/systems/addon_registry/core_feedback_features.php";s:10:"parameters";a:0:{}s:4:"name";s:33:"tpl_preview__rating_inline_static";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:34:"tpl_preview__rating_inline_dynamic";a:6:{s:8:"filename";s:63:"sources/hooks/systems/addon_registry/core_feedback_features.php";s:10:"parameters";a:0:{}s:4:"name";s:34:"tpl_preview__rating_inline_dynamic";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:34:"tpl_preview__rating_display_shared";a:6:{s:8:"filename";s:63:"sources/hooks/systems/addon_registry/core_feedback_features.php";s:10:"parameters";a:0:{}s:4:"name";s:34:"tpl_preview__rating_display_shared";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:25:"tpl_preview__ratings_show";a:6:{s:8:"filename";s:63:"sources/hooks/systems/addon_registry/core_feedback_features.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"tpl_preview__ratings_show";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:42:"Hook_addon_registry_core_feedback_features";s:7:"comment";b:1;}s:31:"Hook_addon_registry_core_fields";a:3:{s:9:"functions";a:10:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/core_fields.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/core_fields.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/core_fields.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/core_fields.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/core_fields.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/core_fields.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/core_fields.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/core_fields.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:32:"tpl_preview__catalogue_multilist";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/core_fields.php";s:10:"parameters";a:0:{}s:4:"name";s:32:"tpl_preview__catalogue_multilist";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:30:"tpl_preview__catalogue_picture";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/core_fields.php";s:10:"parameters";a:0:{}s:4:"name";s:30:"tpl_preview__catalogue_picture";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:31:"Hook_addon_registry_core_fields";s:7:"comment";b:1;}s:40:"Hook_addon_registry_core_form_interfaces";a:3:{s:9:"functions";a:30:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:61:"sources/hooks/systems/addon_registry/core_form_interfaces.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:61:"sources/hooks/systems/addon_registry/core_form_interfaces.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:61:"sources/hooks/systems/addon_registry/core_form_interfaces.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:61:"sources/hooks/systems/addon_registry/core_form_interfaces.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:61:"sources/hooks/systems/addon_registry/core_form_interfaces.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:61:"sources/hooks/systems/addon_registry/core_form_interfaces.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:61:"sources/hooks/systems/addon_registry/core_form_interfaces.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:61:"sources/hooks/systems/addon_registry/core_form_interfaces.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:29:"tpl_preview__wysiwyg_settings";a:6:{s:8:"filename";s:61:"sources/hooks/systems/addon_registry/core_form_interfaces.php";s:10:"parameters";a:0:{}s:4:"name";s:29:"tpl_preview__wysiwyg_settings";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:35:"tpl_preview__attachment_ui_defaults";a:6:{s:8:"filename";s:61:"sources/hooks/systems/addon_registry/core_form_interfaces.php";s:10:"parameters";a:0:{}s:4:"name";s:35:"tpl_preview__attachment_ui_defaults";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:30:"tpl_preview__form_single_field";a:6:{s:8:"filename";s:61:"sources/hooks/systems/addon_registry/core_form_interfaces.php";s:10:"parameters";a:0:{}s:4:"name";s:30:"tpl_preview__form_single_field";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:26:"tpl_preview__form_screen_1";a:6:{s:8:"filename";s:61:"sources/hooks/systems/addon_registry/core_form_interfaces.php";s:10:"parameters";a:0:{}s:4:"name";s:26:"tpl_preview__form_screen_1";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:26:"tpl_preview__form_screen_2";a:6:{s:8:"filename";s:61:"sources/hooks/systems/addon_registry/core_form_interfaces.php";s:10:"parameters";a:0:{}s:4:"name";s:26:"tpl_preview__form_screen_2";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:27:"tpl_preview__posting_screen";a:6:{s:8:"filename";s:61:"sources/hooks/systems/addon_registry/core_form_interfaces.php";s:10:"parameters";a:0:{}s:4:"name";s:27:"tpl_preview__posting_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:23:"tpl_preview__form_group";a:6:{s:8:"filename";s:61:"sources/hooks/systems/addon_registry/core_form_interfaces.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"tpl_preview__form_group";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:25:"tpl_preview__form_grouped";a:6:{s:8:"filename";s:61:"sources/hooks/systems/addon_registry/core_form_interfaces.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"tpl_preview__form_grouped";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:35:"tpl_preview__form_field_set_grouper";a:6:{s:8:"filename";s:61:"sources/hooks/systems/addon_registry/core_form_interfaces.php";s:10:"parameters";a:0:{}s:4:"name";s:35:"tpl_preview__form_field_set_grouper";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:36:"tpl_preview__preview_script_spelling";a:6:{s:8:"filename";s:61:"sources/hooks/systems/addon_registry/core_form_interfaces.php";s:10:"parameters";a:0:{}s:4:"name";s:36:"tpl_preview__preview_script_spelling";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:43:"tpl_preview__preview_script_keyword_density";a:6:{s:8:"filename";s:61:"sources/hooks/systems/addon_registry/core_form_interfaces.php";s:10:"parameters";a:0:{}s:4:"name";s:43:"tpl_preview__preview_script_keyword_density";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:32:"tpl_preview__preview_script_code";a:6:{s:8:"filename";s:61:"sources/hooks/systems/addon_registry/core_form_interfaces.php";s:10:"parameters";a:0:{}s:4:"name";s:32:"tpl_preview__preview_script_code";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:24:"tpl_preview__form_screen";a:6:{s:8:"filename";s:61:"sources/hooks/systems/addon_registry/core_form_interfaces.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"tpl_preview__form_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:25:"tpl_preview__wysiwyg_load";a:6:{s:8:"filename";s:61:"sources/hooks/systems/addon_registry/core_form_interfaces.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"tpl_preview__wysiwyg_load";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:25:"tpl_preview__posting_form";a:6:{s:8:"filename";s:61:"sources/hooks/systems/addon_registry/core_form_interfaces.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"tpl_preview__posting_form";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:29:"tpl_preview__form_descrip_sep";a:6:{s:8:"filename";s:61:"sources/hooks/systems/addon_registry/core_form_interfaces.php";s:10:"parameters";a:0:{}s:4:"name";s:29:"tpl_preview__form_descrip_sep";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:57:"tpl_preview__administrative__form_screen_input_permission";a:6:{s:8:"filename";s:61:"sources/hooks/systems/addon_registry/core_form_interfaces.php";s:10:"parameters";a:0:{}s:4:"name";s:57:"tpl_preview__administrative__form_screen_input_permission";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:63:"tpl_preview__administrative__form_screen_input_permission_outer";a:6:{s:8:"filename";s:61:"sources/hooks/systems/addon_registry/core_form_interfaces.php";s:10:"parameters";a:0:{}s:4:"name";s:63:"tpl_preview__administrative__form_screen_input_permission_outer";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:27:"tpl_preview__preview_script";a:6:{s:8:"filename";s:61:"sources/hooks/systems/addon_registry/core_form_interfaces.php";s:10:"parameters";a:0:{}s:4:"name";s:27:"tpl_preview__preview_script";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:53:"tpl_preview__administrative__block_helper_block_group";a:6:{s:8:"filename";s:61:"sources/hooks/systems/addon_registry/core_form_interfaces.php";s:10:"parameters";a:0:{}s:4:"name";s:53:"tpl_preview__administrative__block_helper_block_group";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:47:"tpl_preview__administrative__block_helper_start";a:6:{s:8:"filename";s:61:"sources/hooks/systems/addon_registry/core_form_interfaces.php";s:10:"parameters";a:0:{}s:4:"name";s:47:"tpl_preview__administrative__block_helper_start";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:46:"tpl_preview__administrative__block_helper_done";a:6:{s:8:"filename";s:61:"sources/hooks/systems/addon_registry/core_form_interfaces.php";s:10:"parameters";a:0:{}s:4:"name";s:46:"tpl_preview__administrative__block_helper_done";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:40:"Hook_addon_registry_core_form_interfaces";s:7:"comment";b:1;}s:38:"Hook_addon_registry_core_forum_drivers";a:3:{s:9:"functions";a:7:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/core_forum_drivers.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/core_forum_drivers.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/core_forum_drivers.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/core_forum_drivers.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/core_forum_drivers.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/core_forum_drivers.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/core_forum_drivers.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}}s:4:"name";s:38:"Hook_addon_registry_core_forum_drivers";s:7:"comment";b:1;}s:37:"Hook_addon_registry_core_graphic_text";a:3:{s:9:"functions";a:7:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:58:"sources/hooks/systems/addon_registry/core_graphic_text.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:58:"sources/hooks/systems/addon_registry/core_graphic_text.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:58:"sources/hooks/systems/addon_registry/core_graphic_text.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:58:"sources/hooks/systems/addon_registry/core_graphic_text.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:58:"sources/hooks/systems/addon_registry/core_graphic_text.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:58:"sources/hooks/systems/addon_registry/core_graphic_text.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:58:"sources/hooks/systems/addon_registry/core_graphic_text.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}}s:4:"name";s:37:"Hook_addon_registry_core_graphic_text";s:7:"comment";b:1;}s:42:"Hook_addon_registry_core_html_abstractions";a:3:{s:9:"functions";a:24:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:63:"sources/hooks/systems/addon_registry/core_html_abstractions.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:63:"sources/hooks/systems/addon_registry/core_html_abstractions.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:63:"sources/hooks/systems/addon_registry/core_html_abstractions.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:63:"sources/hooks/systems/addon_registry/core_html_abstractions.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:63:"sources/hooks/systems/addon_registry/core_html_abstractions.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:63:"sources/hooks/systems/addon_registry/core_html_abstractions.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:63:"sources/hooks/systems/addon_registry/core_html_abstractions.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:63:"sources/hooks/systems/addon_registry/core_html_abstractions.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:31:"tpl_preview__poor_xhtml_wrapper";a:6:{s:8:"filename";s:63:"sources/hooks/systems/addon_registry/core_html_abstractions.php";s:10:"parameters";a:0:{}s:4:"name";s:31:"tpl_preview__poor_xhtml_wrapper";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:23:"tpl_preview__js_refresh";a:6:{s:8:"filename";s:63:"sources/hooks/systems/addon_registry/core_html_abstractions.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"tpl_preview__js_refresh";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:19:"tpl_preview__anchor";a:6:{s:8:"filename";s:63:"sources/hooks/systems/addon_registry/core_html_abstractions.php";s:10:"parameters";a:0:{}s:4:"name";s:19:"tpl_preview__anchor";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:33:"tpl_preview__standalone_html_wrap";a:6:{s:8:"filename";s:63:"sources/hooks/systems/addon_registry/core_html_abstractions.php";s:10:"parameters";a:0:{}s:4:"name";s:33:"tpl_preview__standalone_html_wrap";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:30:"tpl_preview__meta_refresh_line";a:6:{s:8:"filename";s:63:"sources/hooks/systems/addon_registry/core_html_abstractions.php";s:10:"parameters";a:0:{}s:4:"name";s:30:"tpl_preview__meta_refresh_line";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:35:"tpl_preview__hyperlink_popup_window";a:6:{s:8:"filename";s:63:"sources/hooks/systems/addon_registry/core_html_abstractions.php";s:10:"parameters";a:0:{}s:4:"name";s:35:"tpl_preview__hyperlink_popup_window";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:28:"tpl_preview__basic_html_wrap";a:6:{s:8:"filename";s:63:"sources/hooks/systems/addon_registry/core_html_abstractions.php";s:10:"parameters";a:0:{}s:4:"name";s:28:"tpl_preview__basic_html_wrap";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:20:"tpl_preview__floater";a:6:{s:8:"filename";s:63:"sources/hooks/systems/addon_registry/core_html_abstractions.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"tpl_preview__floater";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:28:"tpl_preview__hyperlink_email";a:6:{s:8:"filename";s:63:"sources/hooks/systems/addon_registry/core_html_abstractions.php";s:10:"parameters";a:0:{}s:4:"name";s:28:"tpl_preview__hyperlink_email";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:30:"tpl_preview__hyperlink_tooltip";a:6:{s:8:"filename";s:63:"sources/hooks/systems/addon_registry/core_html_abstractions.php";s:10:"parameters";a:0:{}s:4:"name";s:30:"tpl_preview__hyperlink_tooltip";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:16:"tpl_preview__div";a:6:{s:8:"filename";s:63:"sources/hooks/systems/addon_registry/core_html_abstractions.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"tpl_preview__div";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:17:"tpl_preview__span";a:6:{s:8:"filename";s:63:"sources/hooks/systems/addon_registry/core_html_abstractions.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"tpl_preview__span";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:22:"tpl_preview__paragraph";a:6:{s:8:"filename";s:63:"sources/hooks/systems/addon_registry/core_html_abstractions.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"tpl_preview__paragraph";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:28:"tpl_preview__with_whitespace";a:6:{s:8:"filename";s:63:"sources/hooks/systems/addon_registry/core_html_abstractions.php";s:10:"parameters";a:0:{}s:4:"name";s:28:"tpl_preview__with_whitespace";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:22:"tpl_preview__hyperlink";a:6:{s:8:"filename";s:63:"sources/hooks/systems/addon_registry/core_html_abstractions.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"tpl_preview__hyperlink";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:29:"tpl_preview__hyperlink_button";a:6:{s:8:"filename";s:63:"sources/hooks/systems/addon_registry/core_html_abstractions.php";s:10:"parameters";a:0:{}s:4:"name";s:29:"tpl_preview__hyperlink_button";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:42:"Hook_addon_registry_core_html_abstractions";s:7:"comment";b:1;}s:41:"Hook_addon_registry_core_language_editing";a:3:{s:9:"functions";a:11:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:62:"sources/hooks/systems/addon_registry/core_language_editing.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:62:"sources/hooks/systems/addon_registry/core_language_editing.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:62:"sources/hooks/systems/addon_registry/core_language_editing.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:62:"sources/hooks/systems/addon_registry/core_language_editing.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:62:"sources/hooks/systems/addon_registry/core_language_editing.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:62:"sources/hooks/systems/addon_registry/core_language_editing.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:62:"sources/hooks/systems/addon_registry/core_language_editing.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:62:"sources/hooks/systems/addon_registry/core_language_editing.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:64:"tpl_preview__administrative__translate_language_criticise_screen";a:6:{s:8:"filename";s:62:"sources/hooks/systems/addon_registry/core_language_editing.php";s:10:"parameters";a:0:{}s:4:"name";s:64:"tpl_preview__administrative__translate_language_criticise_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:60:"tpl_preview__administrative__translate_screen_content_screen";a:6:{s:8:"filename";s:62:"sources/hooks/systems/addon_registry/core_language_editing.php";s:10:"parameters";a:0:{}s:4:"name";s:60:"tpl_preview__administrative__translate_screen_content_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:45:"tpl_preview__administrative__translate_screen";a:6:{s:8:"filename";s:62:"sources/hooks/systems/addon_registry/core_language_editing.php";s:10:"parameters";a:0:{}s:4:"name";s:45:"tpl_preview__administrative__translate_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:41:"Hook_addon_registry_core_language_editing";s:7:"comment";b:1;}s:30:"Hook_addon_registry_core_menus";a:3:{s:9:"functions";a:17:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/core_menus.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/core_menus.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/core_menus.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/core_menus.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/core_menus.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/core_menus.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/core_menus.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/core_menus.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:47:"tpl_preview__administrative__menu_editor_screen";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/core_menus.php";s:10:"parameters";a:0:{}s:4:"name";s:47:"tpl_preview__administrative__menu_editor_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:30:"tpl_preview__page_link_chooser";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/core_menus.php";s:10:"parameters";a:0:{}s:4:"name";s:30:"tpl_preview__page_link_chooser";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:31:"tpl_preview__block_menu__mobile";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/core_menus.php";s:10:"parameters";a:0:{}s:4:"name";s:31:"tpl_preview__block_menu__mobile";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:29:"tpl_preview__block_menu__tree";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/core_menus.php";s:10:"parameters";a:0:{}s:4:"name";s:29:"tpl_preview__block_menu__tree";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:33:"tpl_preview__block_menu__dropdown";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/core_menus.php";s:10:"parameters";a:0:{}s:4:"name";s:33:"tpl_preview__block_menu__dropdown";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:33:"tpl_preview__block_menu__embossed";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/core_menus.php";s:10:"parameters";a:0:{}s:4:"name";s:33:"tpl_preview__block_menu__embossed";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:30:"tpl_preview__block_menu__popup";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/core_menus.php";s:10:"parameters";a:0:{}s:4:"name";s:30:"tpl_preview__block_menu__popup";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:31:"tpl_preview__block_menu__select";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/core_menus.php";s:10:"parameters";a:0:{}s:4:"name";s:31:"tpl_preview__block_menu__select";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:32:"tpl_preview__block_menu__sitemap";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/core_menus.php";s:10:"parameters";a:0:{}s:4:"name";s:32:"tpl_preview__block_menu__sitemap";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:30:"Hook_addon_registry_core_menus";s:7:"comment";b:1;}s:38:"Hook_addon_registry_core_notifications";a:3:{s:9:"functions";a:17:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/core_notifications.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/core_notifications.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/core_notifications.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/core_notifications.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/core_notifications.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/core_notifications.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/core_notifications.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/core_notifications.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:39:"tpl_preview__notification_browse_screen";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/core_notifications.php";s:10:"parameters";a:0:{}s:4:"name";s:39:"tpl_preview__notification_browse_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:37:"tpl_preview__notification_view_screen";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/core_notifications.php";s:10:"parameters";a:0:{}s:4:"name";s:37:"tpl_preview__notification_view_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:32:"tpl_preview__notification_poller";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/core_notifications.php";s:10:"parameters";a:0:{}s:4:"name";s:32:"tpl_preview__notification_poller";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:29:"tpl_preview__notification_web";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/core_notifications.php";s:10:"parameters";a:0:{}s:4:"name";s:29:"tpl_preview__notification_web";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:37:"tpl_preview__notification_web_desktop";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/core_notifications.php";s:10:"parameters";a:0:{}s:4:"name";s:37:"tpl_preview__notification_web_desktop";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:36:"tpl_preview__notification_pt_desktop";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/core_notifications.php";s:10:"parameters";a:0:{}s:4:"name";s:36:"tpl_preview__notification_pt_desktop";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:36:"tpl_preview__block_top_notifications";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/core_notifications.php";s:10:"parameters";a:0:{}s:4:"name";s:36:"tpl_preview__block_top_notifications";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:34:"tpl_preview__notifications_regular";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/core_notifications.php";s:10:"parameters";a:0:{}s:4:"name";s:34:"tpl_preview__notifications_regular";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:35:"tpl_preview__notifications_advanced";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/core_notifications.php";s:10:"parameters";a:0:{}s:4:"name";s:35:"tpl_preview__notifications_advanced";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:38:"Hook_addon_registry_core_notifications";s:7:"comment";b:1;}s:46:"Hook_addon_registry_core_permission_management";a:3:{s:9:"functions";a:12:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:67:"sources/hooks/systems/addon_registry/core_permission_management.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:67:"sources/hooks/systems/addon_registry/core_permission_management.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:67:"sources/hooks/systems/addon_registry/core_permission_management.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:67:"sources/hooks/systems/addon_registry/core_permission_management.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:67:"sources/hooks/systems/addon_registry/core_permission_management.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:67:"sources/hooks/systems/addon_registry/core_permission_management.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:67:"sources/hooks/systems/addon_registry/core_permission_management.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:67:"sources/hooks/systems/addon_registry/core_permission_management.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:59:"tpl_preview__administrative__permissions_tree_editor_screen";a:6:{s:8:"filename";s:67:"sources/hooks/systems/addon_registry/core_permission_management.php";s:10:"parameters";a:0:{}s:4:"name";s:59:"tpl_preview__administrative__permissions_tree_editor_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:63:"tpl_preview__administrative__permission_keys_permissions_screen";a:6:{s:8:"filename";s:67:"sources/hooks/systems/addon_registry/core_permission_management.php";s:10:"parameters";a:0:{}s:4:"name";s:63:"tpl_preview__administrative__permission_keys_permissions_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:65:"tpl_preview__administrative__permission_screen_permissions_screen";a:6:{s:8:"filename";s:67:"sources/hooks/systems/addon_registry/core_permission_management.php";s:10:"parameters";a:0:{}s:4:"name";s:65:"tpl_preview__administrative__permission_screen_permissions_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:60:"tpl_preview__administrative__permission_s_permissions_screen";a:6:{s:8:"filename";s:67:"sources/hooks/systems/addon_registry/core_permission_management.php";s:10:"parameters";a:0:{}s:4:"name";s:60:"tpl_preview__administrative__permission_s_permissions_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:46:"Hook_addon_registry_core_permission_management";s:7:"comment";b:1;}s:39:"Hook_addon_registry_core_primary_layout";a:3:{s:9:"functions";a:15:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:60:"sources/hooks/systems/addon_registry/core_primary_layout.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:60:"sources/hooks/systems/addon_registry/core_primary_layout.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:60:"sources/hooks/systems/addon_registry/core_primary_layout.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:60:"sources/hooks/systems/addon_registry/core_primary_layout.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:60:"sources/hooks/systems/addon_registry/core_primary_layout.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:60:"sources/hooks/systems/addon_registry/core_primary_layout.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:60:"sources/hooks/systems/addon_registry/core_primary_layout.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:60:"sources/hooks/systems/addon_registry/core_primary_layout.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:23:"tpl_preview__breadcrumb";a:6:{s:8:"filename";s:60:"sources/hooks/systems/addon_registry/core_primary_layout.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"tpl_preview__breadcrumb";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:24:"tpl_preview__closed_site";a:6:{s:8:"filename";s:60:"sources/hooks/systems/addon_registry/core_primary_layout.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"tpl_preview__closed_site";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:20:"tpl_preview__message";a:6:{s:8:"filename";s:60:"sources/hooks/systems/addon_registry/core_primary_layout.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"tpl_preview__message";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:25:"tpl_preview__mail_subject";a:6:{s:8:"filename";s:60:"sources/hooks/systems/addon_registry/core_primary_layout.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"tpl_preview__mail_subject";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:17:"tpl_preview__mail";a:6:{s:8:"filename";s:60:"sources/hooks/systems/addon_registry/core_primary_layout.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"tpl_preview__mail";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:29:"tpl_preview__global_html_wrap";a:6:{s:8:"filename";s:60:"sources/hooks/systems/addon_registry/core_primary_layout.php";s:10:"parameters";a:0:{}s:4:"name";s:29:"tpl_preview__global_html_wrap";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:25:"tpl_preview__screen_title";a:6:{s:8:"filename";s:60:"sources/hooks/systems/addon_registry/core_primary_layout.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"tpl_preview__screen_title";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:39:"Hook_addon_registry_core_primary_layout";s:7:"comment";b:1;}s:35:"Hook_addon_registry_core_rich_media";a:3:{s:9:"functions";a:91:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:29:"tpl_preview__comcode_big_tabs";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:29:"tpl_preview__comcode_big_tabs";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:37:"tpl_preview__comcode_page_edit_screen";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:37:"tpl_preview__comcode_page_edit_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:28:"tpl_preview__comcode_tooltip";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:28:"tpl_preview__comcode_tooltip";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:32:"tpl_preview__emoticon_click_code";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:32:"tpl_preview__emoticon_click_code";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:24:"tpl_preview__attachments";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"tpl_preview__attachments";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:41:"tpl_preview__comcode_critical_parse_error";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:41:"tpl_preview__comcode_critical_parse_error";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:35:"tpl_preview__comcode_mistake_screen";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:35:"tpl_preview__comcode_mistake_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:29:"tpl_preview__comcode_currency";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:29:"tpl_preview__comcode_currency";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:28:"tpl_preview__comcode_overlay";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:28:"tpl_preview__comcode_overlay";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:29:"tpl_preview__comcode_snapback";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:29:"tpl_preview__comcode_snapback";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:39:"tpl_preview__comcode_section_controller";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:39:"tpl_preview__comcode_section_controller";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:29:"tpl_preview__comcode_carousel";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:29:"tpl_preview__comcode_carousel";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:32:"tpl_preview__comcode_if_in_group";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:32:"tpl_preview__comcode_if_in_group";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:25:"tpl_preview__comcode_abbr";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"tpl_preview__comcode_abbr";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:28:"tpl_preview__comcode_address";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:28:"tpl_preview__comcode_address";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:24:"tpl_preview__comcode_dfn";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"tpl_preview__comcode_dfn";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:22:"tpl_preview__comcode_q";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"tpl_preview__comcode_q";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:26:"tpl_preview__comcode_pulse";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:26:"tpl_preview__comcode_pulse";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:24:"tpl_preview__comcode_del";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"tpl_preview__comcode_del";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:24:"tpl_preview__comcode_ins";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"tpl_preview__comcode_ins";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:25:"tpl_preview__comcode_cite";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"tpl_preview__comcode_cite";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:25:"tpl_preview__comcode_bold";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"tpl_preview__comcode_bold";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:26:"tpl_preview__comcode_align";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:26:"tpl_preview__comcode_align";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:27:"tpl_preview__comcode_indent";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:27:"tpl_preview__comcode_indent";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:29:"tpl_preview__comcode_surround";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:29:"tpl_preview__comcode_surround";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:28:"tpl_preview__comcode_italics";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:28:"tpl_preview__comcode_italics";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:30:"tpl_preview__comcode_underline";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:30:"tpl_preview__comcode_underline";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:27:"tpl_preview__comcode_strike";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:27:"tpl_preview__comcode_strike";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:24:"tpl_preview__comcode_sup";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"tpl_preview__comcode_sup";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:24:"tpl_preview__comcode_sub";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"tpl_preview__comcode_sub";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:27:"tpl_preview__comcode_random";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:27:"tpl_preview__comcode_random";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:28:"tpl_preview__comcode_jumping";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:28:"tpl_preview__comcode_jumping";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:27:"tpl_preview__comcode_ticker";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:27:"tpl_preview__comcode_ticker";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:30:"tpl_preview__comcode_highlight";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:30:"tpl_preview__comcode_highlight";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:25:"tpl_preview__comcode_font";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"tpl_preview__comcode_font";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:28:"tpl_preview__comcode_concept";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:28:"tpl_preview__comcode_concept";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:35:"tpl_preview__comcode_concept_inline";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:35:"tpl_preview__comcode_concept_inline";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:29:"tpl_preview__comcode_concepts";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:29:"tpl_preview__comcode_concepts";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:26:"tpl_preview__comcode_thumb";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:26:"tpl_preview__comcode_thumb";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:24:"tpl_preview__comcode_img";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"tpl_preview__comcode_img";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:24:"tpl_preview__comcode_url";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"tpl_preview__comcode_url";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:26:"tpl_preview__comcode_email";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:26:"tpl_preview__comcode_email";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:30:"tpl_preview__comcode_reference";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:30:"tpl_preview__comcode_reference";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:28:"tpl_preview__comcode_shocker";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:28:"tpl_preview__comcode_shocker";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:25:"tpl_preview__comcode_hide";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"tpl_preview__comcode_hide";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:29:"tpl_preview__comcode_quote_by";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:29:"tpl_preview__comcode_quote_by";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:26:"tpl_preview__comcode_quote";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:26:"tpl_preview__comcode_quote";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:29:"tpl_preview__comcode_contents";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:29:"tpl_preview__comcode_contents";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:34:"tpl_preview__comcode_textcode_line";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:34:"tpl_preview__comcode_textcode_line";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:33:"tpl_preview__comcode_textcode_tab";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:33:"tpl_preview__comcode_textcode_tab";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:30:"tpl_preview__comcode_wiki_link";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:30:"tpl_preview__comcode_wiki_link";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:32:"tpl_preview__comcode_code_scroll";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:32:"tpl_preview__comcode_code_scroll";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:43:"tpl_preview__comcode_table_fake_wide_screen";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:43:"tpl_preview__comcode_table_fake_wide_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:38:"tpl_preview__comcode_table_fake_screen";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:38:"tpl_preview__comcode_table_fake_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:38:"tpl_preview__comcode_table_real_screen";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:38:"tpl_preview__comcode_table_real_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:29:"tpl_preview__comcode_subtitle";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:29:"tpl_preview__comcode_subtitle";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:32:"tpl_preview__attachments_browser";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:32:"tpl_preview__attachments_browser";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:25:"tpl_preview__comcode_code";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"tpl_preview__comcode_code";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:29:"tpl_preview__comcode_tab_body";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:29:"tpl_preview__comcode_tab_body";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:25:"tpl_preview__comcode_samp";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"tpl_preview__comcode_samp";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:24:"tpl_preview__comcode_var";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"tpl_preview__comcode_var";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:29:"tpl_preview__comcode_teletype";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:29:"tpl_preview__comcode_teletype";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:16:"do_media_preview";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:8:"template";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:14:"Template name.";s:11:"phpdoc_name";s:8:"template";}}s:4:"name";s:16:"do_media_preview";s:11:"description";s:51:"Render a media preview through a specific template.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:32:"tpl_preview__media_audio_websafe";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:32:"tpl_preview__media_audio_websafe";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:24:"tpl_preview__media_flash";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"tpl_preview__media_flash";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:32:"tpl_preview__media_image_websafe";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:32:"tpl_preview__media_image_websafe";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:22:"tpl_preview__media_pdf";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"tpl_preview__media_pdf";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:28:"tpl_preview__media_quicktime";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:28:"tpl_preview__media_quicktime";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:28:"tpl_preview__media_realmedia";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:28:"tpl_preview__media_realmedia";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:22:"tpl_preview__media_svg";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"tpl_preview__media_svg";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:33:"tpl_preview__media_video_facebook";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:33:"tpl_preview__media_video_facebook";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:32:"tpl_preview__media_video_general";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:32:"tpl_preview__media_video_general";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:32:"tpl_preview__media_video_websafe";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:32:"tpl_preview__media_video_websafe";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:24:"tpl_preview__media_vimeo";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"tpl_preview__media_vimeo";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:26:"tpl_preview__media_youtube";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:26:"tpl_preview__media_youtube";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:27:"tpl_preview__media_download";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:27:"tpl_preview__media_download";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:33:"tpl_preview__media__download_link";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:33:"tpl_preview__media__download_link";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:38:"tpl_preview__media_webpage_oembed_rich";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:38:"tpl_preview__media_webpage_oembed_rich";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:39:"tpl_preview__media_webpage_oembed_video";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:39:"tpl_preview__media_webpage_oembed_video";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:35:"tpl_preview__media_webpage_semantic";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:35:"tpl_preview__media_webpage_semantic";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:32:"tpl_preview__comcode_member_link";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:32:"tpl_preview__comcode_member_link";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:30:"tpl_preview__autocomplete_load";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:30:"tpl_preview__autocomplete_load";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:30:"tpl_preview__comcode_media_set";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/core_rich_media.php";s:10:"parameters";a:0:{}s:4:"name";s:30:"tpl_preview__comcode_media_set";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:35:"Hook_addon_registry_core_rich_media";s:7:"comment";b:1;}s:33:"Hook_addon_registry_core_themeing";a:3:{s:9:"functions";a:19:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:54:"sources/hooks/systems/addon_registry/core_themeing.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:54:"sources/hooks/systems/addon_registry/core_themeing.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:54:"sources/hooks/systems/addon_registry/core_themeing.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:54:"sources/hooks/systems/addon_registry/core_themeing.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:54:"sources/hooks/systems/addon_registry/core_themeing.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:54:"sources/hooks/systems/addon_registry/core_themeing.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:54:"sources/hooks/systems/addon_registry/core_themeing.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:54:"sources/hooks/systems/addon_registry/core_themeing.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:48:"tpl_preview__administrative__theme_manage_screen";a:6:{s:8:"filename";s:54:"sources/hooks/systems/addon_registry/core_themeing.php";s:10:"parameters";a:0:{}s:4:"name";s:48:"tpl_preview__administrative__theme_manage_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:50:"tpl_preview__administrative__theme_edit_css_screen";a:6:{s:8:"filename";s:54:"sources/hooks/systems/addon_registry/core_themeing.php";s:10:"parameters";a:0:{}s:4:"name";s:50:"tpl_preview__administrative__theme_edit_css_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:51:"tpl_preview__administrative__template_manage_screen";a:6:{s:8:"filename";s:54:"sources/hooks/systems/addon_registry/core_themeing.php";s:10:"parameters";a:0:{}s:4:"name";s:51:"tpl_preview__administrative__template_manage_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:49:"tpl_preview__administrative__template_edit_screen";a:6:{s:8:"filename";s:54:"sources/hooks/systems/addon_registry/core_themeing.php";s:10:"parameters";a:0:{}s:4:"name";s:49:"tpl_preview__administrative__template_edit_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:54:"tpl_preview__administrative__theme_image_manage_screen";a:6:{s:8:"filename";s:54:"sources/hooks/systems/addon_registry/core_themeing.php";s:10:"parameters";a:0:{}s:4:"name";s:54:"tpl_preview__administrative__theme_image_manage_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:48:"tpl_preview__administrative__theme_image_preview";a:6:{s:8:"filename";s:54:"sources/hooks/systems/addon_registry/core_themeing.php";s:10:"parameters";a:0:{}s:4:"name";s:48:"tpl_preview__administrative__theme_image_preview";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:52:"tpl_preview__administrative__template_preview_screen";a:6:{s:8:"filename";s:54:"sources/hooks/systems/addon_registry/core_themeing.php";s:10:"parameters";a:0:{}s:4:"name";s:52:"tpl_preview__administrative__template_preview_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:49:"tpl_preview__administrative__template_tree_screen";a:6:{s:8:"filename";s:54:"sources/hooks/systems/addon_registry/core_themeing.php";s:10:"parameters";a:0:{}s:4:"name";s:49:"tpl_preview__administrative__template_tree_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:49:"tpl_preview__administrative__template_list_screen";a:6:{s:8:"filename";s:54:"sources/hooks/systems/addon_registry/core_themeing.php";s:10:"parameters";a:0:{}s:4:"name";s:49:"tpl_preview__administrative__template_list_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:54:"tpl_preview__administrative__template_edit_link_screen";a:6:{s:8:"filename";s:54:"sources/hooks/systems/addon_registry/core_themeing.php";s:10:"parameters";a:0:{}s:4:"name";s:54:"tpl_preview__administrative__template_edit_link_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:51:"tpl_preview__administrative__tempcode_tester_screen";a:6:{s:8:"filename";s:54:"sources/hooks/systems/addon_registry/core_themeing.php";s:10:"parameters";a:0:{}s:4:"name";s:51:"tpl_preview__administrative__tempcode_tester_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:33:"Hook_addon_registry_core_themeing";s:7:"comment";b:1;}s:33:"Hook_addon_registry_core_upgrader";a:3:{s:9:"functions";a:7:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:54:"sources/hooks/systems/addon_registry/core_upgrader.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:54:"sources/hooks/systems/addon_registry/core_upgrader.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:54:"sources/hooks/systems/addon_registry/core_upgrader.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:54:"sources/hooks/systems/addon_registry/core_upgrader.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:54:"sources/hooks/systems/addon_registry/core_upgrader.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:54:"sources/hooks/systems/addon_registry/core_upgrader.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:54:"sources/hooks/systems/addon_registry/core_upgrader.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}}s:4:"name";s:33:"Hook_addon_registry_core_upgrader";s:7:"comment";b:1;}s:37:"Hook_addon_registry_core_webstandards";a:3:{s:9:"functions";a:10:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:58:"sources/hooks/systems/addon_registry/core_webstandards.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:58:"sources/hooks/systems/addon_registry/core_webstandards.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:58:"sources/hooks/systems/addon_registry/core_webstandards.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:58:"sources/hooks/systems/addon_registry/core_webstandards.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:58:"sources/hooks/systems/addon_registry/core_webstandards.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:58:"sources/hooks/systems/addon_registry/core_webstandards.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:58:"sources/hooks/systems/addon_registry/core_webstandards.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:58:"sources/hooks/systems/addon_registry/core_webstandards.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:41:"tpl_preview__administrative__webstandards";a:6:{s:8:"filename";s:58:"sources/hooks/systems/addon_registry/core_webstandards.php";s:10:"parameters";a:0:{}s:4:"name";s:41:"tpl_preview__administrative__webstandards";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:54:"tpl_preview__administrative__webstandards_error_screen";a:6:{s:8:"filename";s:58:"sources/hooks/systems/addon_registry/core_webstandards.php";s:10:"parameters";a:0:{}s:4:"name";s:54:"tpl_preview__administrative__webstandards_error_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:37:"Hook_addon_registry_core_webstandards";s:7:"comment";b:1;}s:36:"Hook_addon_registry_core_zone_editor";a:3:{s:9:"functions";a:9:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:57:"sources/hooks/systems/addon_registry/core_zone_editor.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:57:"sources/hooks/systems/addon_registry/core_zone_editor.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:57:"sources/hooks/systems/addon_registry/core_zone_editor.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:57:"sources/hooks/systems/addon_registry/core_zone_editor.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:57:"sources/hooks/systems/addon_registry/core_zone_editor.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:57:"sources/hooks/systems/addon_registry/core_zone_editor.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:57:"sources/hooks/systems/addon_registry/core_zone_editor.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:57:"sources/hooks/systems/addon_registry/core_zone_editor.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:47:"tpl_preview__administrative__zone_editor_screen";a:6:{s:8:"filename";s:57:"sources/hooks/systems/addon_registry/core_zone_editor.php";s:10:"parameters";a:0:{}s:4:"name";s:47:"tpl_preview__administrative__zone_editor_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:36:"Hook_addon_registry_core_zone_editor";s:7:"comment";b:1;}s:35:"Hook_addon_registry_counting_blocks";a:3:{s:9:"functions";a:10:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/counting_blocks.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/counting_blocks.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/counting_blocks.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/counting_blocks.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/counting_blocks.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/counting_blocks.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/counting_blocks.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/counting_blocks.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:27:"tpl_preview__main_countdown";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/counting_blocks.php";s:10:"parameters";a:0:{}s:4:"name";s:27:"tpl_preview__main_countdown";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:23:"tpl_preview__main_count";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/counting_blocks.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"tpl_preview__main_count";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:35:"Hook_addon_registry_counting_blocks";s:7:"comment";b:1;}s:34:"Hook_addon_registry_custom_comcode";a:3:{s:9:"functions";a:9:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:55:"sources/hooks/systems/addon_registry/custom_comcode.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:55:"sources/hooks/systems/addon_registry/custom_comcode.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:55:"sources/hooks/systems/addon_registry/custom_comcode.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:55:"sources/hooks/systems/addon_registry/custom_comcode.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:55:"sources/hooks/systems/addon_registry/custom_comcode.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:55:"sources/hooks/systems/addon_registry/custom_comcode.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:55:"sources/hooks/systems/addon_registry/custom_comcode.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:55:"sources/hooks/systems/addon_registry/custom_comcode.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:43:"tpl_preview__block_main_custom_comcode_tags";a:6:{s:8:"filename";s:55:"sources/hooks/systems/addon_registry/custom_comcode.php";s:10:"parameters";a:0:{}s:4:"name";s:43:"tpl_preview__block_main_custom_comcode_tags";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:34:"Hook_addon_registry_custom_comcode";s:7:"comment";b:1;}s:27:"Hook_addon_registry_debrand";a:3:{s:9:"functions";a:7:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/debrand.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/debrand.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/debrand.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/debrand.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/debrand.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/debrand.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/debrand.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}}s:4:"name";s:27:"Hook_addon_registry_debrand";s:7:"comment";b:1;}s:29:"Hook_addon_registry_downloads";a:3:{s:9:"functions";a:15:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/downloads.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/downloads.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/downloads.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/downloads.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/downloads.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/downloads.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/downloads.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/downloads.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:43:"tpl_preview__download_and_images_simple_box";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/downloads.php";s:10:"parameters";a:0:{}s:4:"name";s:43:"tpl_preview__download_and_images_simple_box";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:31:"tpl_preview__download_list_line";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/downloads.php";s:10:"parameters";a:0:{}s:4:"name";s:31:"tpl_preview__download_list_line";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:33:"tpl_preview__download_list_line_2";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/downloads.php";s:10:"parameters";a:0:{}s:4:"name";s:33:"tpl_preview__download_list_line_2";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:37:"tpl_preview__download_category_screen";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/downloads.php";s:10:"parameters";a:0:{}s:4:"name";s:37:"tpl_preview__download_category_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:32:"tpl_preview__download_all_screen";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/downloads.php";s:10:"parameters";a:0:{}s:4:"name";s:32:"tpl_preview__download_all_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:28:"tpl_preview__download_screen";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/downloads.php";s:10:"parameters";a:0:{}s:4:"name";s:28:"tpl_preview__download_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:36:"tpl_preview__download_gateway_screen";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/downloads.php";s:10:"parameters";a:0:{}s:4:"name";s:36:"tpl_preview__download_gateway_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:29:"Hook_addon_registry_downloads";s:7:"comment";b:1;}s:29:"Hook_addon_registry_ecommerce";a:3:{s:9:"functions";a:38:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/ecommerce.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/ecommerce.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/ecommerce.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/ecommerce.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/ecommerce.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/ecommerce.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/ecommerce.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/ecommerce.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:61:"tpl_preview__administrative__ecom_outstanding_invoices_screen";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/ecommerce.php";s:10:"parameters";a:0:{}s:4:"name";s:61:"tpl_preview__administrative__ecom_outstanding_invoices_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:57:"tpl_preview__administrative__ecom_transaction_logs_screen";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/ecommerce.php";s:10:"parameters";a:0:{}s:4:"name";s:57:"tpl_preview__administrative__ecom_transaction_logs_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:50:"tpl_preview__administrative__ecom_cash_flow_screen";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/ecommerce.php";s:10:"parameters";a:0:{}s:4:"name";s:50:"tpl_preview__administrative__ecom_cash_flow_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:43:"tpl_preview__purchase_wizard_stage_transact";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/ecommerce.php";s:10:"parameters";a:0:{}s:4:"name";s:43:"tpl_preview__purchase_wizard_stage_transact";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:35:"tpl_preview__purchase_wizard_screen";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/ecommerce.php";s:10:"parameters";a:0:{}s:4:"name";s:35:"tpl_preview__purchase_wizard_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:32:"tpl_preview__ecom_logos_worldpay";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/ecommerce.php";s:10:"parameters";a:0:{}s:4:"name";s:32:"tpl_preview__ecom_logos_worldpay";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:37:"tpl_preview__ecom_button_via_worldpay";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/ecommerce.php";s:10:"parameters";a:0:{}s:4:"name";s:37:"tpl_preview__ecom_button_via_worldpay";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:50:"tpl_preview__ecom_subscription_button_via_worldpay";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/ecommerce.php";s:10:"parameters";a:0:{}s:4:"name";s:50:"tpl_preview__ecom_subscription_button_via_worldpay";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:44:"tpl_preview__ecom_cancel_button_via_worldpay";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/ecommerce.php";s:10:"parameters";a:0:{}s:4:"name";s:44:"tpl_preview__ecom_cancel_button_via_worldpay";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:35:"tpl_preview__ecom_button_via_paypal";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/ecommerce.php";s:10:"parameters";a:0:{}s:4:"name";s:35:"tpl_preview__ecom_button_via_paypal";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:48:"tpl_preview__ecom_subscription_button_via_paypal";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/ecommerce.php";s:10:"parameters";a:0:{}s:4:"name";s:48:"tpl_preview__ecom_subscription_button_via_paypal";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:42:"tpl_preview__ecom_cancel_button_via_paypal";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/ecommerce.php";s:10:"parameters";a:0:{}s:4:"name";s:42:"tpl_preview__ecom_cancel_button_via_paypal";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:35:"tpl_preview__ecom_button_via_secpay";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/ecommerce.php";s:10:"parameters";a:0:{}s:4:"name";s:35:"tpl_preview__ecom_button_via_secpay";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:48:"tpl_preview__ecom_subscription_button_via_secpay";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/ecommerce.php";s:10:"parameters";a:0:{}s:4:"name";s:48:"tpl_preview__ecom_subscription_button_via_secpay";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:42:"tpl_preview__ecom_cancel_button_via_secpay";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/ecommerce.php";s:10:"parameters";a:0:{}s:4:"name";s:42:"tpl_preview__ecom_cancel_button_via_secpay";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:35:"tpl_preview__ecom_button_via_ccbill";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/ecommerce.php";s:10:"parameters";a:0:{}s:4:"name";s:35:"tpl_preview__ecom_button_via_ccbill";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:48:"tpl_preview__ecom_subscription_button_via_ccbill";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/ecommerce.php";s:10:"parameters";a:0:{}s:4:"name";s:48:"tpl_preview__ecom_subscription_button_via_ccbill";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:42:"tpl_preview__ecom_cancel_button_via_ccbill";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/ecommerce.php";s:10:"parameters";a:0:{}s:4:"name";s:42:"tpl_preview__ecom_cancel_button_via_ccbill";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:40:"tpl_preview__purchase_wizard_stage_guest";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/ecommerce.php";s:10:"parameters";a:0:{}s:4:"name";s:40:"tpl_preview__purchase_wizard_stage_guest";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:41:"tpl_preview__purchase_wizard_stage_choose";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/ecommerce.php";s:10:"parameters";a:0:{}s:4:"name";s:41:"tpl_preview__purchase_wizard_stage_choose";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:42:"tpl_preview__purchase_wizard_stage_message";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/ecommerce.php";s:10:"parameters";a:0:{}s:4:"name";s:42:"tpl_preview__purchase_wizard_stage_message";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:40:"tpl_preview__purchase_wizard_stage_terms";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/ecommerce.php";s:10:"parameters";a:0:{}s:4:"name";s:40:"tpl_preview__purchase_wizard_stage_terms";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:42:"tpl_preview__purchase_wizard_stage_details";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/ecommerce.php";s:10:"parameters";a:0:{}s:4:"name";s:42:"tpl_preview__purchase_wizard_stage_details";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:41:"tpl_preview__purchase_wizard_stage_finish";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/ecommerce.php";s:10:"parameters";a:0:{}s:4:"name";s:41:"tpl_preview__purchase_wizard_stage_finish";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:33:"tpl_preview__ecom_invoices_screen";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/ecommerce.php";s:10:"parameters";a:0:{}s:4:"name";s:33:"tpl_preview__ecom_invoices_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:38:"tpl_preview__ecom_subscriptions_screen";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/ecommerce.php";s:10:"parameters";a:0:{}s:4:"name";s:38:"tpl_preview__ecom_subscriptions_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:44:"tpl_preview__purchase_wizard_stage_subscribe";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/ecommerce.php";s:10:"parameters";a:0:{}s:4:"name";s:44:"tpl_preview__purchase_wizard_stage_subscribe";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:38:"tpl_preview__purchase_wizard_stage_pay";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/ecommerce.php";s:10:"parameters";a:0:{}s:4:"name";s:38:"tpl_preview__purchase_wizard_stage_pay";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:49:"tpl_preview__ecom_view_manual_transactions_screen";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/ecommerce.php";s:10:"parameters";a:0:{}s:4:"name";s:49:"tpl_preview__ecom_view_manual_transactions_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:46:"tpl_preview__member_subscription_status_screen";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/ecommerce.php";s:10:"parameters";a:0:{}s:4:"name";s:46:"tpl_preview__member_subscription_status_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:29:"Hook_addon_registry_ecommerce";s:7:"comment";b:1;}s:28:"Hook_addon_registry_errorlog";a:3:{s:9:"functions";a:9:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/errorlog.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/errorlog.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/errorlog.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/errorlog.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/errorlog.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/errorlog.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/errorlog.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/errorlog.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:44:"tpl_preview__administrative__errorlog_screen";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/errorlog.php";s:10:"parameters";a:0:{}s:4:"name";s:44:"tpl_preview__administrative__errorlog_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:28:"Hook_addon_registry_errorlog";s:7:"comment";b:1;}s:28:"Hook_addon_registry_failover";a:3:{s:9:"functions";a:7:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/failover.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/failover.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/failover.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/failover.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/failover.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/failover.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/failover.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}}s:4:"name";s:28:"Hook_addon_registry_failover";s:7:"comment";b:1;}s:28:"Hook_addon_registry_filedump";a:3:{s:9:"functions";a:10:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/filedump.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/filedump.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/filedump.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/filedump.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/filedump.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/filedump.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/filedump.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/filedump.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:28:"tpl_preview__filedump_screen";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/filedump.php";s:10:"parameters";a:0:{}s:4:"name";s:28:"tpl_preview__filedump_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:34:"tpl_preview__filedump_embed_screen";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/filedump.php";s:10:"parameters";a:0:{}s:4:"name";s:34:"tpl_preview__filedump_embed_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:28:"Hook_addon_registry_filedump";s:7:"comment";b:1;}s:32:"Hook_addon_registry_forum_blocks";a:3:{s:9:"functions";a:11:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:53:"sources/hooks/systems/addon_registry/forum_blocks.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:53:"sources/hooks/systems/addon_registry/forum_blocks.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:53:"sources/hooks/systems/addon_registry/forum_blocks.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:53:"sources/hooks/systems/addon_registry/forum_blocks.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:53:"sources/hooks/systems/addon_registry/forum_blocks.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:53:"sources/hooks/systems/addon_registry/forum_blocks.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:53:"sources/hooks/systems/addon_registry/forum_blocks.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:53:"sources/hooks/systems/addon_registry/forum_blocks.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:36:"tpl_preview__block_main_forum_topics";a:6:{s:8:"filename";s:53:"sources/hooks/systems/addon_registry/forum_blocks.php";s:10:"parameters";a:0:{}s:4:"name";s:36:"tpl_preview__block_main_forum_topics";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:34:"tpl_preview__block_side_forum_news";a:6:{s:8:"filename";s:53:"sources/hooks/systems/addon_registry/forum_blocks.php";s:10:"parameters";a:0:{}s:4:"name";s:34:"tpl_preview__block_side_forum_news";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:34:"tpl_preview__block_main_forum_news";a:6:{s:8:"filename";s:53:"sources/hooks/systems/addon_registry/forum_blocks.php";s:10:"parameters";a:0:{}s:4:"name";s:34:"tpl_preview__block_main_forum_news";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:32:"Hook_addon_registry_forum_blocks";s:7:"comment";b:1;}s:29:"Hook_addon_registry_galleries";a:3:{s:9:"functions";a:23:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/galleries.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/galleries.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/galleries.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/galleries.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/galleries.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/galleries.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/galleries.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/galleries.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:30:"tpl_preview__gallery_image_box";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/galleries.php";s:10:"parameters";a:0:{}s:4:"name";s:30:"tpl_preview__gallery_image_box";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:30:"tpl_preview__gallery_video_box";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/galleries.php";s:10:"parameters";a:0:{}s:4:"name";s:30:"tpl_preview__gallery_video_box";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:41:"tpl_preview__cns_member_profile_galleries";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/galleries.php";s:10:"parameters";a:0:{}s:4:"name";s:41:"tpl_preview__cns_member_profile_galleries";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:35:"tpl_preview__block_main_image_fader";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/galleries.php";s:10:"parameters";a:0:{}s:4:"name";s:35:"tpl_preview__block_main_image_fader";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:50:"tpl_preview__administrative__gallery_import_screen";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/galleries.php";s:10:"parameters";a:0:{}s:4:"name";s:50:"tpl_preview__administrative__gallery_import_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:28:"tpl_preview__gallery_popular";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/galleries.php";s:10:"parameters";a:0:{}s:4:"name";s:28:"tpl_preview__gallery_popular";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:26:"tpl_preview__gallery_image";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/galleries.php";s:10:"parameters";a:0:{}s:4:"name";s:26:"tpl_preview__gallery_image";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:37:"tpl_preview__block_main_gallery_embed";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/galleries.php";s:10:"parameters";a:0:{}s:4:"name";s:37:"tpl_preview__block_main_gallery_embed";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:33:"tpl_preview__block_side_galleries";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/galleries.php";s:10:"parameters";a:0:{}s:4:"name";s:33:"tpl_preview__block_side_galleries";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:222:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with andplaceholder_date_raw() without blank data).";}}s:31:"tpl_preview__gallery_video_info";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/galleries.php";s:10:"parameters";a:0:{}s:4:"name";s:31:"tpl_preview__gallery_video_info";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:36:"tpl_preview__gallery_entry_list_line";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/galleries.php";s:10:"parameters";a:0:{}s:4:"name";s:36:"tpl_preview__gallery_entry_list_line";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:36:"tpl_preview__gallery_flow_mode_video";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/galleries.php";s:10:"parameters";a:0:{}s:4:"name";s:36:"tpl_preview__gallery_flow_mode_video";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:36:"tpl_preview__gallery_flow_mode_image";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/galleries.php";s:10:"parameters";a:0:{}s:4:"name";s:36:"tpl_preview__gallery_flow_mode_image";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:40:"tpl_preview__gallery_regular_mode_screen";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/galleries.php";s:10:"parameters";a:0:{}s:4:"name";s:40:"tpl_preview__gallery_regular_mode_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:33:"tpl_preview__gallery_entry_screen";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/galleries.php";s:10:"parameters";a:0:{}s:4:"name";s:33:"tpl_preview__gallery_entry_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:29:"Hook_addon_registry_galleries";s:7:"comment";b:1;}s:36:"Hook_addon_registry_google_appengine";a:3:{s:9:"functions";a:7:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:57:"sources/hooks/systems/addon_registry/google_appengine.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:57:"sources/hooks/systems/addon_registry/google_appengine.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:57:"sources/hooks/systems/addon_registry/google_appengine.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:57:"sources/hooks/systems/addon_registry/google_appengine.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:57:"sources/hooks/systems/addon_registry/google_appengine.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:57:"sources/hooks/systems/addon_registry/google_appengine.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:57:"sources/hooks/systems/addon_registry/google_appengine.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}}s:4:"name";s:36:"Hook_addon_registry_google_appengine";s:7:"comment";b:1;}s:29:"Hook_addon_registry_help_page";a:3:{s:9:"functions";a:7:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/help_page.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/help_page.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/help_page.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/help_page.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/help_page.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/help_page.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/help_page.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}}s:4:"name";s:29:"Hook_addon_registry_help_page";s:7:"comment";b:1;}s:33:"Hook_addon_registry_hphp_buildkit";a:3:{s:9:"functions";a:7:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:54:"sources/hooks/systems/addon_registry/hphp_buildkit.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:54:"sources/hooks/systems/addon_registry/hphp_buildkit.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:54:"sources/hooks/systems/addon_registry/hphp_buildkit.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:54:"sources/hooks/systems/addon_registry/hphp_buildkit.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:54:"sources/hooks/systems/addon_registry/hphp_buildkit.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:54:"sources/hooks/systems/addon_registry/hphp_buildkit.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:54:"sources/hooks/systems/addon_registry/hphp_buildkit.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}}s:4:"name";s:33:"Hook_addon_registry_hphp_buildkit";s:7:"comment";b:1;}s:26:"Hook_addon_registry_import";a:3:{s:9:"functions";a:11:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:47:"sources/hooks/systems/addon_registry/import.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:47:"sources/hooks/systems/addon_registry/import.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:47:"sources/hooks/systems/addon_registry/import.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:47:"sources/hooks/systems/addon_registry/import.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:47:"sources/hooks/systems/addon_registry/import.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:47:"sources/hooks/systems/addon_registry/import.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:47:"sources/hooks/systems/addon_registry/import.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:47:"sources/hooks/systems/addon_registry/import.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:49:"tpl_preview__administrative__import_action_screen";a:6:{s:8:"filename";s:47:"sources/hooks/systems/addon_registry/import.php";s:10:"parameters";a:0:{}s:4:"name";s:49:"tpl_preview__administrative__import_action_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:57:"tpl_preview__administrative__import_mkportal_fcomcodepage";a:6:{s:8:"filename";s:47:"sources/hooks/systems/addon_registry/import.php";s:10:"parameters";a:0:{}s:4:"name";s:57:"tpl_preview__administrative__import_mkportal_fcomcodepage";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:56:"tpl_preview__administrative__import_phpnuke_fcomcodepage";a:6:{s:8:"filename";s:47:"sources/hooks/systems/addon_registry/import.php";s:10:"parameters";a:0:{}s:4:"name";s:56:"tpl_preview__administrative__import_phpnuke_fcomcodepage";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:26:"Hook_addon_registry_import";s:7:"comment";b:1;}s:29:"Hook_addon_registry_installer";a:3:{s:9:"functions";a:17:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/installer.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/installer.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/installer.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/installer.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/installer.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/installer.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/installer.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/installer.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:43:"tpl_preview__administrative__installer_wrap";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/installer.php";s:10:"parameters";a:0:{}s:4:"name";s:43:"tpl_preview__administrative__installer_wrap";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:45:"tpl_preview__administrative__installer_step_1";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/installer.php";s:10:"parameters";a:0:{}s:4:"name";s:45:"tpl_preview__administrative__installer_step_1";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:45:"tpl_preview__administrative__installer_step_2";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/installer.php";s:10:"parameters";a:0:{}s:4:"name";s:45:"tpl_preview__administrative__installer_step_2";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:45:"tpl_preview__administrative__installer_step_3";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/installer.php";s:10:"parameters";a:0:{}s:4:"name";s:45:"tpl_preview__administrative__installer_step_3";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:9:"make_tick";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/installer.php";s:10:"parameters";a:4:{i:0;a:5:{s:4:"name";s:9:"nice_name";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:38:"The human readable name for the option";s:11:"phpdoc_name";s:9:"nice_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:27:"A description of the option";s:11:"phpdoc_name";s:11:"description";}i:2;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The name of the option";s:11:"phpdoc_name";s:4:"name";}i:3;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:0;s:4:"type";s:6:"BINARY";s:11:"description";s:39:"The default/current value of the option";s:11:"phpdoc_name";s:5:"value";}}s:4:"name";s:9:"make_tick";s:11:"description";s:41:"Make the UI for an installer tick option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:22:"The list of usergroups";}}s:11:"make_option";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/installer.php";s:10:"parameters";a:6:{i:0;a:5:{s:4:"name";s:9:"nice_name";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:38:"The human readable name for the option";s:11:"phpdoc_name";s:9:"nice_name";}i:1;a:5:{s:4:"name";s:11:"description";s:3:"ref";b:0;s:4:"type";s:8:"Tempcode";s:11:"description";s:27:"A description of the option";s:11:"phpdoc_name";s:11:"description";}i:2;a:5:{s:4:"name";s:4:"name";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:22:"The name of the option";s:11:"phpdoc_name";s:4:"name";}i:3;a:5:{s:4:"name";s:5:"value";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:39:"The default/current value of the option";s:11:"phpdoc_name";s:5:"value";}i:4;a:7:{s:4:"name";s:6:"hidden";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:77:"Whether the options value should be kept star'red out (e.g. it is a password)";s:11:"phpdoc_name";s:6:"hidden";}i:5;a:7:{s:4:"name";s:8:"required";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:30:"Whether the option is required";s:11:"phpdoc_name";s:8:"required";}}s:4:"name";s:11:"make_option";s:11:"description";s:44:"Make the UI for an installer textual option.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:10:"The option";}}s:45:"tpl_preview__administrative__installer_step_4";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/installer.php";s:10:"parameters";a:0:{}s:4:"name";s:45:"tpl_preview__administrative__installer_step_4";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:47:"tpl_preview__administrative__installer_step_log";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/installer.php";s:10:"parameters";a:0:{}s:4:"name";s:47:"tpl_preview__administrative__installer_step_log";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:46:"tpl_preview__administrative__installer_step_10";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/installer.php";s:10:"parameters";a:0:{}s:4:"name";s:46:"tpl_preview__administrative__installer_step_10";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:29:"Hook_addon_registry_installer";s:7:"comment";b:1;}s:34:"Hook_addon_registry_language_block";a:3:{s:9:"functions";a:9:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:55:"sources/hooks/systems/addon_registry/language_block.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:55:"sources/hooks/systems/addon_registry/language_block.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:55:"sources/hooks/systems/addon_registry/language_block.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:55:"sources/hooks/systems/addon_registry/language_block.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:55:"sources/hooks/systems/addon_registry/language_block.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:55:"sources/hooks/systems/addon_registry/language_block.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:55:"sources/hooks/systems/addon_registry/language_block.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:55:"sources/hooks/systems/addon_registry/language_block.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:32:"tpl_preview__block_side_language";a:6:{s:8:"filename";s:55:"sources/hooks/systems/addon_registry/language_block.php";s:10:"parameters";a:0:{}s:4:"name";s:32:"tpl_preview__block_side_language";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:34:"Hook_addon_registry_language_block";s:7:"comment";b:1;}s:24:"Hook_addon_registry_ldap";a:3:{s:9:"functions";a:9:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/ldap.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/ldap.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/ldap.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/ldap.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/ldap.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/ldap.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/ldap.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/ldap.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:49:"tpl_preview__administrative__cns_ldap_sync_screen";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/ldap.php";s:10:"parameters";a:0:{}s:4:"name";s:49:"tpl_preview__administrative__cns_ldap_sync_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:24:"Hook_addon_registry_ldap";s:7:"comment";b:1;}s:40:"Hook_addon_registry_linux_helper_scripts";a:3:{s:9:"functions";a:7:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:61:"sources/hooks/systems/addon_registry/linux_helper_scripts.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:61:"sources/hooks/systems/addon_registry/linux_helper_scripts.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:61:"sources/hooks/systems/addon_registry/linux_helper_scripts.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:61:"sources/hooks/systems/addon_registry/linux_helper_scripts.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:61:"sources/hooks/systems/addon_registry/linux_helper_scripts.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:61:"sources/hooks/systems/addon_registry/linux_helper_scripts.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:61:"sources/hooks/systems/addon_registry/linux_helper_scripts.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}}s:4:"name";s:40:"Hook_addon_registry_linux_helper_scripts";s:7:"comment";b:1;}s:41:"Hook_addon_registry_match_key_permissions";a:3:{s:9:"functions";a:7:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:62:"sources/hooks/systems/addon_registry/match_key_permissions.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:62:"sources/hooks/systems/addon_registry/match_key_permissions.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:62:"sources/hooks/systems/addon_registry/match_key_permissions.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:62:"sources/hooks/systems/addon_registry/match_key_permissions.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:62:"sources/hooks/systems/addon_registry/match_key_permissions.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:62:"sources/hooks/systems/addon_registry/match_key_permissions.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:62:"sources/hooks/systems/addon_registry/match_key_permissions.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}}s:4:"name";s:41:"Hook_addon_registry_match_key_permissions";s:7:"comment";b:1;}s:23:"Hook_addon_registry_msn";a:3:{s:9:"functions";a:10:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:44:"sources/hooks/systems/addon_registry/msn.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:44:"sources/hooks/systems/addon_registry/msn.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:44:"sources/hooks/systems/addon_registry/msn.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:44:"sources/hooks/systems/addon_registry/msn.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:44:"sources/hooks/systems/addon_registry/msn.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:44:"sources/hooks/systems/addon_registry/msn.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:44:"sources/hooks/systems/addon_registry/msn.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:44:"sources/hooks/systems/addon_registry/msn.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:31:"tpl_preview__block_side_network";a:6:{s:8:"filename";s:44:"sources/hooks/systems/addon_registry/msn.php";s:10:"parameters";a:0:{}s:4:"name";s:31:"tpl_preview__block_side_network";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:20:"tpl_preview__netlink";a:6:{s:8:"filename";s:44:"sources/hooks/systems/addon_registry/msn.php";s:10:"parameters";a:0:{}s:4:"name";s:20:"tpl_preview__netlink";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:23:"Hook_addon_registry_msn";s:7:"comment";b:1;}s:24:"Hook_addon_registry_news";a:3:{s:9:"functions";a:19:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/news.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/news.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/news.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/news.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/news.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/news.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/news.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/news.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:40:"tpl_preview__block_main_image_fader_news";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/news.php";s:10:"parameters";a:0:{}s:4:"name";s:40:"tpl_preview__block_main_image_fader_news";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:36:"tpl_preview__cns_member_profile_blog";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/news.php";s:10:"parameters";a:0:{}s:4:"name";s:36:"tpl_preview__cns_member_profile_blog";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:36:"tpl_preview__block_side_news_archive";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/news.php";s:10:"parameters";a:0:{}s:4:"name";s:36:"tpl_preview__block_side_news_archive";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:28:"tpl_preview__block_main_news";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/news.php";s:10:"parameters";a:0:{}s:4:"name";s:28:"tpl_preview__block_main_news";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:57:"tpl_preview__administrative__news_wordpress_import_screen";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/news.php";s:10:"parameters";a:0:{}s:4:"name";s:57:"tpl_preview__administrative__news_wordpress_import_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:32:"tpl_preview__news_archive_screen";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/news.php";s:10:"parameters";a:0:{}s:4:"name";s:32:"tpl_preview__news_archive_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:27:"tpl_preview__news_chicklets";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/news.php";s:10:"parameters";a:0:{}s:4:"name";s:27:"tpl_preview__news_chicklets";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:28:"tpl_preview__block_side_news";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/news.php";s:10:"parameters";a:0:{}s:4:"name";s:28:"tpl_preview__block_side_news";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:39:"tpl_preview__block_side_news_categories";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/news.php";s:10:"parameters";a:0:{}s:4:"name";s:39:"tpl_preview__block_side_news_categories";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:30:"tpl_preview__block_bottom_news";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/news.php";s:10:"parameters";a:0:{}s:4:"name";s:30:"tpl_preview__block_bottom_news";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:29:"tpl_preview__news_full_screen";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/news.php";s:10:"parameters";a:0:{}s:4:"name";s:29:"tpl_preview__news_full_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:24:"Hook_addon_registry_news";s:7:"comment";b:1;}s:31:"Hook_addon_registry_news_shared";a:3:{s:9:"functions";a:9:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/news_shared.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/news_shared.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/news_shared.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/news_shared.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/news_shared.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/news_shared.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/news_shared.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/news_shared.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:31:"tpl_preview__news_piece_summary";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/news_shared.php";s:10:"parameters";a:0:{}s:4:"name";s:31:"tpl_preview__news_piece_summary";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:31:"Hook_addon_registry_news_shared";s:7:"comment";b:1;}s:30:"Hook_addon_registry_newsletter";a:3:{s:9:"functions";a:15:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/newsletter.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/newsletter.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/newsletter.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/newsletter.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/newsletter.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/newsletter.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/newsletter.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/newsletter.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:42:"tpl_preview__newsletter_automated_fcomcode";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/newsletter.php";s:10:"parameters";a:0:{}s:4:"name";s:42:"tpl_preview__newsletter_automated_fcomcode";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:58:"tpl_preview__administrative__newsletter_subscribers_screen";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/newsletter.php";s:10:"parameters";a:0:{}s:4:"name";s:58:"tpl_preview__administrative__newsletter_subscribers_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:31:"tpl_preview__newsletter_default";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/newsletter.php";s:10:"parameters";a:0:{}s:4:"name";s:31:"tpl_preview__newsletter_default";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:52:"tpl_preview__administrative__newsletter_confirm_wrap";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/newsletter.php";s:10:"parameters";a:0:{}s:4:"name";s:52:"tpl_preview__administrative__newsletter_confirm_wrap";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:41:"tpl_preview__block_main_newsletter_signup";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/newsletter.php";s:10:"parameters";a:0:{}s:4:"name";s:41:"tpl_preview__block_main_newsletter_signup";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:46:"tpl_preview__block_main_newsletter_signup_done";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/newsletter.php";s:10:"parameters";a:0:{}s:4:"name";s:46:"tpl_preview__block_main_newsletter_signup_done";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:39:"tpl_preview__periodic_newsletter_remove";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/newsletter.php";s:10:"parameters";a:0:{}s:4:"name";s:39:"tpl_preview__periodic_newsletter_remove";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:30:"Hook_addon_registry_newsletter";s:7:"comment";b:1;}s:35:"Hook_addon_registry_page_management";a:3:{s:9:"functions";a:10:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/page_management.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/page_management.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/page_management.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/page_management.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/page_management.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/page_management.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/page_management.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/page_management.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:50:"tpl_preview__administrative__sitemap_editor_screen";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/page_management.php";s:10:"parameters";a:0:{}s:4:"name";s:50:"tpl_preview__administrative__sitemap_editor_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:54:"tpl_preview__administrative__webstandards_check_screen";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/page_management.php";s:10:"parameters";a:0:{}s:4:"name";s:54:"tpl_preview__administrative__webstandards_check_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:35:"Hook_addon_registry_page_management";s:7:"comment";b:1;}s:27:"Hook_addon_registry_phpinfo";a:3:{s:9:"functions";a:7:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/phpinfo.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/phpinfo.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/phpinfo.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/phpinfo.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/phpinfo.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/phpinfo.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/phpinfo.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}}s:4:"name";s:27:"Hook_addon_registry_phpinfo";s:7:"comment";b:1;}s:26:"Hook_addon_registry_points";a:3:{s:9:"functions";a:12:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:47:"sources/hooks/systems/addon_registry/points.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:47:"sources/hooks/systems/addon_registry/points.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:47:"sources/hooks/systems/addon_registry/points.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:47:"sources/hooks/systems/addon_registry/points.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:47:"sources/hooks/systems/addon_registry/points.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:47:"sources/hooks/systems/addon_registry/points.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:47:"sources/hooks/systems/addon_registry/points.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:47:"sources/hooks/systems/addon_registry/points.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:32:"tpl_preview__points_leader_board";a:6:{s:8:"filename";s:47:"sources/hooks/systems/addon_registry/points.php";s:10:"parameters";a:0:{}s:4:"name";s:32:"tpl_preview__points_leader_board";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:39:"tpl_preview__points_leader_board_screen";a:6:{s:8:"filename";s:47:"sources/hooks/systems/addon_registry/points.php";s:10:"parameters";a:0:{}s:4:"name";s:39:"tpl_preview__points_leader_board_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:33:"tpl_preview__points_search_screen";a:6:{s:8:"filename";s:47:"sources/hooks/systems/addon_registry/points.php";s:10:"parameters";a:0:{}s:4:"name";s:33:"tpl_preview__points_search_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:26:"tpl_preview__points_screen";a:6:{s:8:"filename";s:47:"sources/hooks/systems/addon_registry/points.php";s:10:"parameters";a:0:{}s:4:"name";s:26:"tpl_preview__points_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:26:"Hook_addon_registry_points";s:7:"comment";b:1;}s:30:"Hook_addon_registry_pointstore";a:3:{s:9:"functions";a:24:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/pointstore.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/pointstore.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/pointstore.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/pointstore.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/pointstore.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/pointstore.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/pointstore.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/pointstore.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:50:"tpl_preview__administrative__pointstore_log_screen";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/pointstore.php";s:10:"parameters";a:0:{}s:4:"name";s:50:"tpl_preview__administrative__pointstore_log_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:52:"tpl_preview__administrative__pointstore_price_screen";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/pointstore.php";s:10:"parameters";a:0:{}s:4:"name";s:52:"tpl_preview__administrative__pointstore_price_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:38:"tpl_preview__pointstore_confirm_screen";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/pointstore.php";s:10:"parameters";a:0:{}s:4:"name";s:38:"tpl_preview__pointstore_confirm_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:38:"tpl_preview__pointstore_forwarder_mail";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/pointstore.php";s:10:"parameters";a:0:{}s:4:"name";s:38:"tpl_preview__pointstore_forwarder_mail";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:35:"tpl_preview__pointstore_pop3_screen";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/pointstore.php";s:10:"parameters";a:0:{}s:4:"name";s:35:"tpl_preview__pointstore_pop3_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:33:"tpl_preview__pointstore_pop3_mail";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/pointstore.php";s:10:"parameters";a:0:{}s:4:"name";s:33:"tpl_preview__pointstore_pop3_mail";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:29:"tpl_preview__pointstore_quota";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/pointstore.php";s:10:"parameters";a:0:{}s:4:"name";s:29:"tpl_preview__pointstore_quota";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:34:"tpl_preview__pointstore_quota_mail";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/pointstore.php";s:10:"parameters";a:0:{}s:4:"name";s:34:"tpl_preview__pointstore_quota_mail";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:42:"tpl_preview__pointstore_custom_item_screen";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/pointstore.php";s:10:"parameters";a:0:{}s:4:"name";s:42:"tpl_preview__pointstore_custom_item_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:45:"tpl_preview__pointstore_highlight_name_screen";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/pointstore.php";s:10:"parameters";a:0:{}s:4:"name";s:45:"tpl_preview__pointstore_highlight_name_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:30:"tpl_preview__pointstore_screen";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/pointstore.php";s:10:"parameters";a:0:{}s:4:"name";s:30:"tpl_preview__pointstore_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:30:"tpl_preview__pointstore_custom";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/pointstore.php";s:10:"parameters";a:0:{}s:4:"name";s:30:"tpl_preview__pointstore_custom";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:32:"tpl_preview__pointstore_gambling";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/pointstore.php";s:10:"parameters";a:0:{}s:4:"name";s:32:"tpl_preview__pointstore_gambling";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:38:"tpl_preview__pointstore_highlight_name";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/pointstore.php";s:10:"parameters";a:0:{}s:4:"name";s:38:"tpl_preview__pointstore_highlight_name";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:34:"tpl_preview__pointstore_permission";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/pointstore.php";s:10:"parameters";a:0:{}s:4:"name";s:34:"tpl_preview__pointstore_permission";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:33:"tpl_preview__pointstore_topic_pin";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/pointstore.php";s:10:"parameters";a:0:{}s:4:"name";s:33:"tpl_preview__pointstore_topic_pin";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:30:"Hook_addon_registry_pointstore";s:7:"comment";b:1;}s:25:"Hook_addon_registry_polls";a:3:{s:9:"functions";a:15:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:46:"sources/hooks/systems/addon_registry/polls.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:46:"sources/hooks/systems/addon_registry/polls.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:46:"sources/hooks/systems/addon_registry/polls.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:46:"sources/hooks/systems/addon_registry/polls.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:46:"sources/hooks/systems/addon_registry/polls.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:46:"sources/hooks/systems/addon_registry/polls.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:46:"sources/hooks/systems/addon_registry/polls.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:46:"sources/hooks/systems/addon_registry/polls.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:28:"tpl_preview__block_main_poll";a:6:{s:8:"filename";s:46:"sources/hooks/systems/addon_registry/polls.php";s:10:"parameters";a:0:{}s:4:"name";s:28:"tpl_preview__block_main_poll";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:29:"tpl_preview__poll_rss_summary";a:6:{s:8:"filename";s:46:"sources/hooks/systems/addon_registry/polls.php";s:10:"parameters";a:0:{}s:4:"name";s:29:"tpl_preview__poll_rss_summary";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:24:"tpl_preview__poll_answer";a:6:{s:8:"filename";s:46:"sources/hooks/systems/addon_registry/polls.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"tpl_preview__poll_answer";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:31:"tpl_preview__poll_answer_result";a:6:{s:8:"filename";s:46:"sources/hooks/systems/addon_registry/polls.php";s:10:"parameters";a:0:{}s:4:"name";s:31:"tpl_preview__poll_answer_result";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:4:"poll";a:6:{s:8:"filename";s:46:"sources/hooks/systems/addon_registry/polls.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"section";s:7:"default";s:0:"";s:11:"default_raw";s:2:"''";s:3:"ref";b:0;s:4:"type";s:6:"string";s:11:"description";s:10:"View type.";s:11:"phpdoc_name";s:7:"section";}}s:4:"name";s:4:"poll";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:28:"tpl_preview__poll_list_entry";a:6:{s:8:"filename";s:46:"sources/hooks/systems/addon_registry/polls.php";s:10:"parameters";a:0:{}s:4:"name";s:28:"tpl_preview__poll_list_entry";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:24:"tpl_preview__poll_screen";a:6:{s:8:"filename";s:46:"sources/hooks/systems/addon_registry/polls.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"tpl_preview__poll_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:25:"Hook_addon_registry_polls";s:7:"comment";b:1;}s:42:"Hook_addon_registry_printer_friendly_block";a:3:{s:9:"functions";a:9:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:63:"sources/hooks/systems/addon_registry/printer_friendly_block.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:63:"sources/hooks/systems/addon_registry/printer_friendly_block.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:63:"sources/hooks/systems/addon_registry/printer_friendly_block.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:63:"sources/hooks/systems/addon_registry/printer_friendly_block.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:63:"sources/hooks/systems/addon_registry/printer_friendly_block.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:63:"sources/hooks/systems/addon_registry/printer_friendly_block.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:63:"sources/hooks/systems/addon_registry/printer_friendly_block.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:63:"sources/hooks/systems/addon_registry/printer_friendly_block.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:40:"tpl_preview__block_side_printer_friendly";a:6:{s:8:"filename";s:63:"sources/hooks/systems/addon_registry/printer_friendly_block.php";s:10:"parameters";a:0:{}s:4:"name";s:40:"tpl_preview__block_side_printer_friendly";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:42:"Hook_addon_registry_printer_friendly_block";s:7:"comment";b:1;}s:27:"Hook_addon_registry_quizzes";a:3:{s:9:"functions";a:17:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/quizzes.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/quizzes.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/quizzes.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/quizzes.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/quizzes.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/quizzes.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/quizzes.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/quizzes.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:48:"tpl_preview__administrative__quiz_results_screen";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/quizzes.php";s:10:"parameters";a:0:{}s:4:"name";s:48:"tpl_preview__administrative__quiz_results_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:47:"tpl_preview__administrative__quiz_result_screen";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/quizzes.php";s:10:"parameters";a:0:{}s:4:"name";s:47:"tpl_preview__administrative__quiz_result_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:25:"tpl_preview__quiz_results";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/quizzes.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"tpl_preview__quiz_results";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:32:"tpl_preview__quiz_archive_screen";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/quizzes.php";s:10:"parameters";a:0:{}s:4:"name";s:32:"tpl_preview__quiz_archive_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:24:"tpl_preview__quiz_screen";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/quizzes.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"tpl_preview__quiz_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:37:"tpl_preview__quiz_survey_answers_mail";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/quizzes.php";s:10:"parameters";a:0:{}s:4:"name";s:37:"tpl_preview__quiz_survey_answers_mail";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:35:"tpl_preview__quiz_test_answers_mail";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/quizzes.php";s:10:"parameters";a:0:{}s:4:"name";s:35:"tpl_preview__quiz_test_answers_mail";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:29:"tpl_preview__quiz_done_screen";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/quizzes.php";s:10:"parameters";a:0:{}s:4:"name";s:29:"tpl_preview__quiz_done_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:32:"tpl_preview__member_quiz_entries";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/quizzes.php";s:10:"parameters";a:0:{}s:4:"name";s:32:"tpl_preview__member_quiz_entries";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:27:"Hook_addon_registry_quizzes";s:7:"comment";b:1;}s:33:"Hook_addon_registry_random_quotes";a:3:{s:9:"functions";a:9:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:54:"sources/hooks/systems/addon_registry/random_quotes.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:54:"sources/hooks/systems/addon_registry/random_quotes.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:54:"sources/hooks/systems/addon_registry/random_quotes.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:54:"sources/hooks/systems/addon_registry/random_quotes.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:54:"sources/hooks/systems/addon_registry/random_quotes.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:54:"sources/hooks/systems/addon_registry/random_quotes.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:54:"sources/hooks/systems/addon_registry/random_quotes.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:54:"sources/hooks/systems/addon_registry/random_quotes.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:30:"tpl_preview__block_main_quotes";a:6:{s:8:"filename";s:54:"sources/hooks/systems/addon_registry/random_quotes.php";s:10:"parameters";a:0:{}s:4:"name";s:30:"tpl_preview__block_main_quotes";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:33:"Hook_addon_registry_random_quotes";s:7:"comment";b:1;}s:33:"Hook_addon_registry_realtime_rain";a:3:{s:9:"functions";a:10:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:54:"sources/hooks/systems/addon_registry/realtime_rain.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:54:"sources/hooks/systems/addon_registry/realtime_rain.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:54:"sources/hooks/systems/addon_registry/realtime_rain.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:54:"sources/hooks/systems/addon_registry/realtime_rain.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:54:"sources/hooks/systems/addon_registry/realtime_rain.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:54:"sources/hooks/systems/addon_registry/realtime_rain.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:54:"sources/hooks/systems/addon_registry/realtime_rain.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:54:"sources/hooks/systems/addon_registry/realtime_rain.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:50:"tpl_preview__administrative__realtime_rain_overlay";a:6:{s:8:"filename";s:54:"sources/hooks/systems/addon_registry/realtime_rain.php";s:10:"parameters";a:0:{}s:4:"name";s:50:"tpl_preview__administrative__realtime_rain_overlay";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:49:"tpl_preview__administrative__realtime_rain_bubble";a:6:{s:8:"filename";s:54:"sources/hooks/systems/addon_registry/realtime_rain.php";s:10:"parameters";a:0:{}s:4:"name";s:49:"tpl_preview__administrative__realtime_rain_bubble";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:33:"Hook_addon_registry_realtime_rain";s:7:"comment";b:1;}s:29:"Hook_addon_registry_recommend";a:3:{s:9:"functions";a:9:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/recommend.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/recommend.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/recommend.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/recommend.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/recommend.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/recommend.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/recommend.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/recommend.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:38:"tpl_preview__block_main_screen_actions";a:6:{s:8:"filename";s:50:"sources/hooks/systems/addon_registry/recommend.php";s:10:"parameters";a:0:{}s:4:"name";s:38:"tpl_preview__block_main_screen_actions";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:29:"Hook_addon_registry_recommend";s:7:"comment";b:1;}s:36:"Hook_addon_registry_redirects_editor";a:3:{s:9:"functions";a:9:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:57:"sources/hooks/systems/addon_registry/redirects_editor.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:57:"sources/hooks/systems/addon_registry/redirects_editor.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:57:"sources/hooks/systems/addon_registry/redirects_editor.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:57:"sources/hooks/systems/addon_registry/redirects_editor.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:57:"sources/hooks/systems/addon_registry/redirects_editor.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:57:"sources/hooks/systems/addon_registry/redirects_editor.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:57:"sources/hooks/systems/addon_registry/redirects_editor.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:57:"sources/hooks/systems/addon_registry/redirects_editor.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:51:"tpl_preview__administrative__redirecte_table_screen";a:6:{s:8:"filename";s:57:"sources/hooks/systems/addon_registry/redirects_editor.php";s:10:"parameters";a:0:{}s:4:"name";s:51:"tpl_preview__administrative__redirecte_table_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:36:"Hook_addon_registry_redirects_editor";s:7:"comment";b:1;}s:36:"Hook_addon_registry_rootkit_detector";a:3:{s:9:"functions";a:7:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:57:"sources/hooks/systems/addon_registry/rootkit_detector.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:57:"sources/hooks/systems/addon_registry/rootkit_detector.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:57:"sources/hooks/systems/addon_registry/rootkit_detector.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:57:"sources/hooks/systems/addon_registry/rootkit_detector.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:57:"sources/hooks/systems/addon_registry/rootkit_detector.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:57:"sources/hooks/systems/addon_registry/rootkit_detector.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:57:"sources/hooks/systems/addon_registry/rootkit_detector.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}}s:4:"name";s:36:"Hook_addon_registry_rootkit_detector";s:7:"comment";b:1;}s:26:"Hook_addon_registry_search";a:3:{s:9:"functions";a:14:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:47:"sources/hooks/systems/addon_registry/search.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:47:"sources/hooks/systems/addon_registry/search.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:47:"sources/hooks/systems/addon_registry/search.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:47:"sources/hooks/systems/addon_registry/search.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:47:"sources/hooks/systems/addon_registry/search.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:47:"sources/hooks/systems/addon_registry/search.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:47:"sources/hooks/systems/addon_registry/search.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:47:"sources/hooks/systems/addon_registry/search.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:30:"tpl_preview__block_main_search";a:6:{s:8:"filename";s:47:"sources/hooks/systems/addon_registry/search.php";s:10:"parameters";a:0:{}s:4:"name";s:30:"tpl_preview__block_main_search";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:29:"tpl_preview__block_top_search";a:6:{s:8:"filename";s:47:"sources/hooks/systems/addon_registry/search.php";s:10:"parameters";a:0:{}s:4:"name";s:29:"tpl_preview__block_top_search";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:33:"tpl_preview__block_side_tag_cloud";a:6:{s:8:"filename";s:47:"sources/hooks/systems/addon_registry/search.php";s:10:"parameters";a:0:{}s:4:"name";s:33:"tpl_preview__block_side_tag_cloud";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:17:"tpl_preview__tags";a:6:{s:8:"filename";s:47:"sources/hooks/systems/addon_registry/search.php";s:10:"parameters";a:0:{}s:4:"name";s:17:"tpl_preview__tags";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:23:"tpl_preview__opensearch";a:6:{s:8:"filename";s:47:"sources/hooks/systems/addon_registry/search.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"tpl_preview__opensearch";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:31:"tpl_preview__search_form_screen";a:6:{s:8:"filename";s:47:"sources/hooks/systems/addon_registry/search.php";s:10:"parameters";a:0:{}s:4:"name";s:31:"tpl_preview__search_form_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:26:"Hook_addon_registry_search";s:7:"comment";b:1;}s:35:"Hook_addon_registry_securitylogging";a:3:{s:9:"functions";a:13:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/securitylogging.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/securitylogging.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/securitylogging.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/securitylogging.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/securitylogging.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/securitylogging.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/securitylogging.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/securitylogging.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:26:"tpl_preview__ip_ban_screen";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/securitylogging.php";s:10:"parameters";a:0:{}s:4:"name";s:26:"tpl_preview__ip_ban_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:46:"tpl_preview__administrative__hack_attempt_mail";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/securitylogging.php";s:10:"parameters";a:0:{}s:4:"name";s:46:"tpl_preview__administrative__hack_attempt_mail";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:44:"tpl_preview__administrative__security_screen";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/securitylogging.php";s:10:"parameters";a:0:{}s:4:"name";s:44:"tpl_preview__administrative__security_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:50:"tpl_preview__administrative__security_alert_screen";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/securitylogging.php";s:10:"parameters";a:0:{}s:4:"name";s:50:"tpl_preview__administrative__security_alert_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:42:"tpl_preview__administrative__lookup_screen";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/securitylogging.php";s:10:"parameters";a:0:{}s:4:"name";s:42:"tpl_preview__administrative__lookup_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:35:"Hook_addon_registry_securitylogging";s:7:"comment";b:1;}s:31:"Hook_addon_registry_setupwizard";a:3:{s:9:"functions";a:11:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/setupwizard.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/setupwizard.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/setupwizard.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/setupwizard.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/setupwizard.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/setupwizard.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/setupwizard.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/setupwizard.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:54:"tpl_preview__administrative__setupwizard_block_preview";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/setupwizard.php";s:10:"parameters";a:0:{}s:4:"name";s:54:"tpl_preview__administrative__setupwizard_block_preview";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:49:"tpl_preview__administrative__setupwizard_2_screen";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/setupwizard.php";s:10:"parameters";a:0:{}s:4:"name";s:49:"tpl_preview__administrative__setupwizard_2_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:49:"tpl_preview__administrative__setupwizard_7_screen";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/setupwizard.php";s:10:"parameters";a:0:{}s:4:"name";s:49:"tpl_preview__administrative__setupwizard_7_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:31:"Hook_addon_registry_setupwizard";s:7:"comment";b:1;}s:28:"Hook_addon_registry_shopping";a:3:{s:9:"functions";a:21:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/shopping.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/shopping.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/shopping.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/shopping.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/shopping.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/shopping.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/shopping.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/shopping.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:36:"tpl_preview__shopping_cart_stage_pay";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/shopping.php";s:10:"parameters";a:0:{}s:4:"name";s:36:"tpl_preview__shopping_cart_stage_pay";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:53:"tpl_preview__administrative__ecom_admin_orders_screen";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/shopping.php";s:10:"parameters";a:0:{}s:4:"name";s:53:"tpl_preview__administrative__ecom_admin_orders_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:18:"show_custom_tables";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/shopping.php";s:10:"parameters";a:1:{i:0;a:5:{s:4:"name";s:6:"tplset";s:3:"ref";b:0;s:4:"type";s:7:"ID_TEXT";s:11:"description";s:12:"Tpl set name";s:11:"phpdoc_name";s:6:"tplset";}}s:4:"name";s:18:"show_custom_tables";s:11:"description";s:40:"Function to display custom result tables";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:8:"Tempcode";s:11:"description";s:8:"Tempcode";}}s:61:"tpl_preview__administrative__ecom_admin_orders_details_screen";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/shopping.php";s:10:"parameters";a:0:{}s:4:"name";s:61:"tpl_preview__administrative__ecom_admin_orders_details_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:35:"tpl_preview__ecommerce_item_details";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/shopping.php";s:10:"parameters";a:0:{}s:4:"name";s:35:"tpl_preview__ecommerce_item_details";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:40:"tpl_preview__ecom_cart_button_via_paypal";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/shopping.php";s:10:"parameters";a:0:{}s:4:"name";s:40:"tpl_preview__ecom_cart_button_via_paypal";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:33:"tpl_preview__shopping_cart_screen";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/shopping.php";s:10:"parameters";a:0:{}s:4:"name";s:33:"tpl_preview__shopping_cart_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:31:"tpl_preview__ecom_orders_screen";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/shopping.php";s:10:"parameters";a:0:{}s:4:"name";s:31:"tpl_preview__ecom_orders_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:39:"tpl_preview__ecom_orders_details_screen";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/shopping.php";s:10:"parameters";a:0:{}s:4:"name";s:39:"tpl_preview__ecom_orders_details_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:34:"tpl_preview__products_entry_screen";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/shopping.php";s:10:"parameters";a:0:{}s:4:"name";s:34:"tpl_preview__products_entry_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:43:"tpl_preview__grid_category_screen__products";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/shopping.php";s:10:"parameters";a:0:{}s:4:"name";s:43:"tpl_preview__grid_category_screen__products";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:34:"tpl_preview__ecom_cart_link_screen";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/shopping.php";s:10:"parameters";a:0:{}s:4:"name";s:34:"tpl_preview__ecom_cart_link_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:35:"tpl_preview__results_products_table";a:6:{s:8:"filename";s:49:"sources/hooks/systems/addon_registry/shopping.php";s:10:"parameters";a:0:{}s:4:"name";s:35:"tpl_preview__results_products_table";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:28:"Hook_addon_registry_shopping";s:7:"comment";b:1;}s:23:"Hook_addon_registry_sms";a:3:{s:9:"functions";a:9:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:44:"sources/hooks/systems/addon_registry/sms.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:44:"sources/hooks/systems/addon_registry/sms.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:44:"sources/hooks/systems/addon_registry/sms.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:44:"sources/hooks/systems/addon_registry/sms.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:44:"sources/hooks/systems/addon_registry/sms.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:44:"sources/hooks/systems/addon_registry/sms.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:44:"sources/hooks/systems/addon_registry/sms.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:9:"uninstall";a:5:{s:8:"filename";s:44:"sources/hooks/systems/addon_registry/sms.php";s:10:"parameters";a:0:{}s:4:"name";s:9:"uninstall";s:11:"description";s:20:"Uninstall the addon.";s:5:"flags";a:0:{}}s:7:"install";a:5:{s:8:"filename";s:44:"sources/hooks/systems/addon_registry/sms.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:12:"upgrade_from";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?integer";s:11:"description";s:53:"What version we're upgrading from (null: new install)";s:11:"phpdoc_name";s:12:"upgrade_from";}}s:4:"name";s:7:"install";s:11:"description";s:18:"Install the addon.";s:5:"flags";a:0:{}}}s:4:"name";s:23:"Hook_addon_registry_sms";s:7:"comment";b:1;}s:23:"Hook_addon_registry_ssl";a:3:{s:9:"functions";a:9:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:44:"sources/hooks/systems/addon_registry/ssl.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:44:"sources/hooks/systems/addon_registry/ssl.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:44:"sources/hooks/systems/addon_registry/ssl.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:44:"sources/hooks/systems/addon_registry/ssl.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:44:"sources/hooks/systems/addon_registry/ssl.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:44:"sources/hooks/systems/addon_registry/ssl.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:44:"sources/hooks/systems/addon_registry/ssl.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:44:"sources/hooks/systems/addon_registry/ssl.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:53:"tpl_preview__administrative__ssl_configuration_screen";a:6:{s:8:"filename";s:44:"sources/hooks/systems/addon_registry/ssl.php";s:10:"parameters";a:0:{}s:4:"name";s:53:"tpl_preview__administrative__ssl_configuration_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:23:"Hook_addon_registry_ssl";s:7:"comment";b:1;}s:25:"Hook_addon_registry_staff";a:3:{s:9:"functions";a:10:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:46:"sources/hooks/systems/addon_registry/staff.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:46:"sources/hooks/systems/addon_registry/staff.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:46:"sources/hooks/systems/addon_registry/staff.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:46:"sources/hooks/systems/addon_registry/staff.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:46:"sources/hooks/systems/addon_registry/staff.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:46:"sources/hooks/systems/addon_registry/staff.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:46:"sources/hooks/systems/addon_registry/staff.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:46:"sources/hooks/systems/addon_registry/staff.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:47:"tpl_preview__administrative__staff_admin_screen";a:6:{s:8:"filename";s:46:"sources/hooks/systems/addon_registry/staff.php";s:10:"parameters";a:0:{}s:4:"name";s:47:"tpl_preview__administrative__staff_admin_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:25:"tpl_preview__staff_screen";a:6:{s:8:"filename";s:46:"sources/hooks/systems/addon_registry/staff.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"tpl_preview__staff_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:25:"Hook_addon_registry_staff";s:7:"comment";b:1;}s:35:"Hook_addon_registry_staff_messaging";a:3:{s:9:"functions";a:11:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/staff_messaging.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/staff_messaging.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/staff_messaging.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/staff_messaging.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/staff_messaging.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/staff_messaging.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/staff_messaging.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/staff_messaging.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:53:"tpl_preview__administrative__messaging_message_screen";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/staff_messaging.php";s:10:"parameters";a:0:{}s:4:"name";s:53:"tpl_preview__administrative__messaging_message_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:34:"tpl_preview__block_main_contact_us";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/staff_messaging.php";s:10:"parameters";a:0:{}s:4:"name";s:34:"tpl_preview__block_main_contact_us";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:38:"tpl_preview__block_main_contact_simple";a:6:{s:8:"filename";s:56:"sources/hooks/systems/addon_registry/staff_messaging.php";s:10:"parameters";a:0:{}s:4:"name";s:38:"tpl_preview__block_main_contact_simple";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:35:"Hook_addon_registry_staff_messaging";s:7:"comment";b:1;}s:25:"Hook_addon_registry_stats";a:3:{s:9:"functions";a:11:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:46:"sources/hooks/systems/addon_registry/stats.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:46:"sources/hooks/systems/addon_registry/stats.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:46:"sources/hooks/systems/addon_registry/stats.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:46:"sources/hooks/systems/addon_registry/stats.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:46:"sources/hooks/systems/addon_registry/stats.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:46:"sources/hooks/systems/addon_registry/stats.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:46:"sources/hooks/systems/addon_registry/stats.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:46:"sources/hooks/systems/addon_registry/stats.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:41:"tpl_preview__administrative__stats_screen";a:6:{s:8:"filename";s:46:"sources/hooks/systems/addon_registry/stats.php";s:10:"parameters";a:0:{}s:4:"name";s:41:"tpl_preview__administrative__stats_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:50:"tpl_preview__administrative__stats_screen_overview";a:6:{s:8:"filename";s:46:"sources/hooks/systems/addon_registry/stats.php";s:10:"parameters";a:0:{}s:4:"name";s:50:"tpl_preview__administrative__stats_screen_overview";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:49:"tpl_preview__administrative__stats_screen_iscreen";a:6:{s:8:"filename";s:46:"sources/hooks/systems/addon_registry/stats.php";s:10:"parameters";a:0:{}s:4:"name";s:49:"tpl_preview__administrative__stats_screen_iscreen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:25:"Hook_addon_registry_stats";s:7:"comment";b:1;}s:31:"Hook_addon_registry_stats_block";a:3:{s:9:"functions";a:9:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/stats_block.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/stats_block.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/stats_block.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/stats_block.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/stats_block.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/stats_block.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/stats_block.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/stats_block.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:29:"tpl_preview__block_side_stats";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/stats_block.php";s:10:"parameters";a:0:{}s:4:"name";s:29:"tpl_preview__block_side_stats";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:31:"Hook_addon_registry_stats_block";s:7:"comment";b:1;}s:41:"Hook_addon_registry_supermember_directory";a:3:{s:9:"functions";a:9:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:62:"sources/hooks/systems/addon_registry/supermember_directory.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:62:"sources/hooks/systems/addon_registry/supermember_directory.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:62:"sources/hooks/systems/addon_registry/supermember_directory.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:62:"sources/hooks/systems/addon_registry/supermember_directory.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:62:"sources/hooks/systems/addon_registry/supermember_directory.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:62:"sources/hooks/systems/addon_registry/supermember_directory.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:62:"sources/hooks/systems/addon_registry/supermember_directory.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:62:"sources/hooks/systems/addon_registry/supermember_directory.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:32:"tpl_preview__supermembers_screen";a:6:{s:8:"filename";s:62:"sources/hooks/systems/addon_registry/supermember_directory.php";s:10:"parameters";a:0:{}s:4:"name";s:32:"tpl_preview__supermembers_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:41:"Hook_addon_registry_supermember_directory";s:7:"comment";b:1;}s:31:"Hook_addon_registry_syndication";a:3:{s:9:"functions";a:15:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/syndication.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/syndication.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/syndication.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/syndication.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/syndication.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/syndication.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/syndication.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/syndication.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:24:"tpl_preview__rss_wrapper";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/syndication.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"tpl_preview__rss_wrapper";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:25:"tpl_preview__atom_wrapper";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/syndication.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"tpl_preview__atom_wrapper";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:21:"tpl_preview__rss_xslt";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/syndication.php";s:10:"parameters";a:0:{}s:4:"name";s:21:"tpl_preview__rss_xslt";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:22:"tpl_preview__atom_xslt";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/syndication.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"tpl_preview__atom_xslt";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:22:"tpl_preview__opml_xslt";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/syndication.php";s:10:"parameters";a:0:{}s:4:"name";s:22:"tpl_preview__opml_xslt";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:25:"tpl_preview__opml_wrapper";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/syndication.php";s:10:"parameters";a:0:{}s:4:"name";s:25:"tpl_preview__opml_wrapper";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:23:"tpl_preview__rss_header";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/syndication.php";s:10:"parameters";a:0:{}s:4:"name";s:23:"tpl_preview__rss_header";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:31:"Hook_addon_registry_syndication";s:7:"comment";b:1;}s:38:"Hook_addon_registry_syndication_blocks";a:3:{s:9:"functions";a:10:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/syndication_blocks.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/syndication_blocks.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/syndication_blocks.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/syndication_blocks.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/syndication_blocks.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/syndication_blocks.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/syndication_blocks.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/syndication_blocks.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:27:"tpl_preview__block_side_rss";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/syndication_blocks.php";s:10:"parameters";a:0:{}s:4:"name";s:27:"tpl_preview__block_side_rss";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:27:"tpl_preview__block_main_rss";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/syndication_blocks.php";s:10:"parameters";a:0:{}s:4:"name";s:27:"tpl_preview__block_main_rss";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:38:"Hook_addon_registry_syndication_blocks";s:7:"comment";b:1;}s:48:"Hook_addon_registry_textbased_persistent_caching";a:3:{s:9:"functions";a:7:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:69:"sources/hooks/systems/addon_registry/textbased_persistent_caching.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:69:"sources/hooks/systems/addon_registry/textbased_persistent_caching.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:69:"sources/hooks/systems/addon_registry/textbased_persistent_caching.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:69:"sources/hooks/systems/addon_registry/textbased_persistent_caching.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:69:"sources/hooks/systems/addon_registry/textbased_persistent_caching.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:69:"sources/hooks/systems/addon_registry/textbased_persistent_caching.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:69:"sources/hooks/systems/addon_registry/textbased_persistent_caching.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}}s:4:"name";s:48:"Hook_addon_registry_textbased_persistent_caching";s:7:"comment";b:1;}s:31:"Hook_addon_registry_themewizard";a:3:{s:9:"functions";a:11:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/themewizard.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/themewizard.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/themewizard.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/themewizard.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/themewizard.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/themewizard.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/themewizard.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/themewizard.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:50:"tpl_preview__administrative__themewizard_2_preview";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/themewizard.php";s:10:"parameters";a:0:{}s:4:"name";s:50:"tpl_preview__administrative__themewizard_2_preview";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:49:"tpl_preview__administrative__themewizard_2_screen";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/themewizard.php";s:10:"parameters";a:0:{}s:4:"name";s:49:"tpl_preview__administrative__themewizard_2_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:41:"tpl_preview__administrative__logowizard_2";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/themewizard.php";s:10:"parameters";a:0:{}s:4:"name";s:41:"tpl_preview__administrative__logowizard_2";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:31:"Hook_addon_registry_themewizard";s:7:"comment";b:1;}s:27:"Hook_addon_registry_tickets";a:3:{s:9:"functions";a:12:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/tickets.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/tickets.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/tickets.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/tickets.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/tickets.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/tickets.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/tickets.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/tickets.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:35:"tpl_preview__support_tickets_screen";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/tickets.php";s:10:"parameters";a:0:{}s:4:"name";s:35:"tpl_preview__support_tickets_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:34:"tpl_preview__support_ticket_screen";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/tickets.php";s:10:"parameters";a:0:{}s:4:"name";s:34:"tpl_preview__support_ticket_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:42:"tpl_preview__support_tickets_search_screen";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/tickets.php";s:10:"parameters";a:0:{}s:4:"name";s:42:"tpl_preview__support_tickets_search_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:39:"tpl_preview__support_ticket_type_screen";a:6:{s:8:"filename";s:48:"sources/hooks/systems/addon_registry/tickets.php";s:10:"parameters";a:0:{}s:4:"name";s:39:"tpl_preview__support_ticket_type_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:27:"Hook_addon_registry_tickets";s:7:"comment";b:1;}s:31:"Hook_addon_registry_uninstaller";a:3:{s:9:"functions";a:9:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/uninstaller.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/uninstaller.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/uninstaller.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/uninstaller.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/uninstaller.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/uninstaller.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/uninstaller.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/uninstaller.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:45:"tpl_preview__administrative__uninstall_screen";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/uninstaller.php";s:10:"parameters";a:0:{}s:4:"name";s:45:"tpl_preview__administrative__uninstall_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:31:"Hook_addon_registry_uninstaller";s:7:"comment";b:1;}s:31:"Hook_addon_registry_unvalidated";a:3:{s:9:"functions";a:10:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/unvalidated.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/unvalidated.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/unvalidated.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/unvalidated.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/unvalidated.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/unvalidated.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/unvalidated.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/unvalidated.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:52:"tpl_preview__administrative__validation_request_mail";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/unvalidated.php";s:10:"parameters";a:0:{}s:4:"name";s:52:"tpl_preview__administrative__validation_request_mail";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:47:"tpl_preview__administrative__unvalidated_screen";a:6:{s:8:"filename";s:52:"sources/hooks/systems/addon_registry/unvalidated.php";s:10:"parameters";a:0:{}s:4:"name";s:47:"tpl_preview__administrative__unvalidated_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:31:"Hook_addon_registry_unvalidated";s:7:"comment";b:1;}s:38:"Hook_addon_registry_users_online_block";a:3:{s:9:"functions";a:9:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/users_online_block.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/users_online_block.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/users_online_block.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/users_online_block.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/users_online_block.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/users_online_block.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/users_online_block.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/users_online_block.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:36:"tpl_preview__block_side_users_online";a:6:{s:8:"filename";s:59:"sources/hooks/systems/addon_registry/users_online_block.php";s:10:"parameters";a:0:{}s:4:"name";s:36:"tpl_preview__block_side_users_online";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:38:"Hook_addon_registry_users_online_block";s:7:"comment";b:1;}s:34:"Hook_addon_registry_welcome_emails";a:3:{s:9:"functions";a:7:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:55:"sources/hooks/systems/addon_registry/welcome_emails.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:55:"sources/hooks/systems/addon_registry/welcome_emails.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:55:"sources/hooks/systems/addon_registry/welcome_emails.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:55:"sources/hooks/systems/addon_registry/welcome_emails.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:55:"sources/hooks/systems/addon_registry/welcome_emails.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:55:"sources/hooks/systems/addon_registry/welcome_emails.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:55:"sources/hooks/systems/addon_registry/welcome_emails.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}}s:4:"name";s:34:"Hook_addon_registry_welcome_emails";s:7:"comment";b:1;}s:24:"Hook_addon_registry_wiki";a:3:{s:9:"functions";a:12:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/wiki.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/wiki.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/wiki.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/wiki.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/wiki.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/wiki.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/wiki.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/wiki.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:52:"tpl_preview__administrative__wiki_manage_tree_screen";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/wiki.php";s:10:"parameters";a:0:{}s:4:"name";s:52:"tpl_preview__administrative__wiki_manage_tree_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:27:"tpl_preview__wiki_list_tree";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/wiki.php";s:10:"parameters";a:0:{}s:4:"name";s:27:"tpl_preview__wiki_list_tree";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:29:"tpl_preview__wiki_page_screen";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/wiki.php";s:10:"parameters";a:0:{}s:4:"name";s:29:"tpl_preview__wiki_page_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}s:32:"tpl_preview__wiki_posting_screen";a:6:{s:8:"filename";s:45:"sources/hooks/systems/addon_registry/wiki.php";s:10:"parameters";a:0:{}s:4:"name";s:32:"tpl_preview__wiki_posting_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:24:"Hook_addon_registry_wiki";s:7:"comment";b:1;}s:42:"Hook_addon_registry_windows_helper_scripts";a:3:{s:9:"functions";a:7:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:63:"sources/hooks/systems/addon_registry/windows_helper_scripts.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:63:"sources/hooks/systems/addon_registry/windows_helper_scripts.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:63:"sources/hooks/systems/addon_registry/windows_helper_scripts.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:63:"sources/hooks/systems/addon_registry/windows_helper_scripts.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:63:"sources/hooks/systems/addon_registry/windows_helper_scripts.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:63:"sources/hooks/systems/addon_registry/windows_helper_scripts.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:63:"sources/hooks/systems/addon_registry/windows_helper_scripts.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}}s:4:"name";s:42:"Hook_addon_registry_windows_helper_scripts";s:7:"comment";b:1;}s:30:"Hook_addon_registry_wordfilter";a:3:{s:9:"functions";a:9:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/wordfilter.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/wordfilter.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/wordfilter.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/wordfilter.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/wordfilter.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/wordfilter.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/wordfilter.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}s:12:"tpl_previews";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/wordfilter.php";s:10:"parameters";a:0:{}s:4:"name";s:12:"tpl_previews";s:11:"description";s:97:"Get mapping between template names and the method of this class that can render a preview of them";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:11:"The mapping";}}s:46:"tpl_preview__administrative__wordfilter_screen";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/wordfilter.php";s:10:"parameters";a:0:{}s:4:"name";s:46:"tpl_preview__administrative__wordfilter_screen";s:11:"description";s:332:"Get a preview(s) of a (group of) template(s), as a full standalone piece of HTML in Tempcode format.Uses sources/lorem.php functions to place appropriate stock-text. Should not hard-code things, as the code is intended to be declaritive.Assumptions: You can assume all Lang/CSS/JavaScript files in this addon have been pre-required.";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:200:"Array of previews, each is Tempcode. Normally we have just one preview, but occasionally it is good to test templates are flexible (e.g. if they use IF_EMPTY, we can test with and without blank data).";}}}s:4:"name";s:30:"Hook_addon_registry_wordfilter";s:7:"comment";b:1;}s:30:"Hook_addon_registry_xml_fields";a:3:{s:9:"functions";a:7:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/xml_fields.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/xml_fields.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/xml_fields.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/xml_fields.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/xml_fields.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/xml_fields.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/xml_fields.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}}s:4:"name";s:30:"Hook_addon_registry_xml_fields";s:7:"comment";b:1;}s:30:"Hook_addon_registry_zone_logos";a:3:{s:9:"functions";a:7:{s:15:"get_chmod_array";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/zone_logos.php";s:10:"parameters";a:1:{i:0;a:7:{s:4:"name";s:7:"runtime";s:7:"default";s:13:"boolean-false";s:11:"default_raw";s:5:"false";s:3:"ref";b:0;s:4:"type";s:7:"boolean";s:11:"description";s:73:"Whether to include wildcards represented runtime-created chmoddable files";s:11:"phpdoc_name";s:7:"runtime";}}s:4:"name";s:15:"get_chmod_array";s:11:"description";s:37:"Get a list of file permissions to set";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:11:"get_version";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/zone_logos.php";s:10:"parameters";a:0:{}s:4:"name";s:11:"get_version";s:11:"description";s:44:"Get the version of Composr this addon is for";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"float";s:11:"description";s:14:"Version number";}}s:15:"get_description";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/zone_logos.php";s:10:"parameters";a:0:{}s:4:"name";s:15:"get_description";s:11:"description";s:32:"Get the description of the addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:24:"Description of the addon";}}s:24:"get_applicable_tutorials";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/zone_logos.php";s:10:"parameters";a:0:{}s:4:"name";s:24:"get_applicable_tutorials";s:11:"description";s:48:"Get a list of tutorials that apply to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:17:"List of tutorials";}}s:16:"get_dependencies";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/zone_logos.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_dependencies";s:11:"description";s:33:"Get a mapping of dependency types";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:23:"File permissions to set";}}s:16:"get_default_icon";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/zone_logos.php";s:10:"parameters";a:0:{}s:4:"name";s:16:"get_default_icon";s:11:"description";s:40:"Explicitly say which icon should be used";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:7:"URLPATH";s:11:"description";s:4:"Icon";}}s:13:"get_file_list";a:6:{s:8:"filename";s:51:"sources/hooks/systems/addon_registry/zone_logos.php";s:10:"parameters";a:0:{}s:4:"name";s:13:"get_file_list";s:11:"description";s:45:"Get a list of files that belong to this addon";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:5:"array";s:11:"description";s:13:"List of files";}}}s:4:"name";s:30:"Hook_addon_registry_zone_logos";s:7:"comment";b:1;}s:30:"Hook_choose_catalogue_category";a:3:{s:9:"functions";a:2:{s:3:"run";a:6:{s:8:"filename";s:61:"sources/hooks/systems/ajax_tree/choose_catalogue_category.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:31:"The ID to do under (null: root)";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:28:"Options being passed through";s:11:"phpdoc_name";s:7:"options";}i:2;a:7:{s:4:"name";s:7:"default";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:40:"The ID to select by default (null: none)";s:11:"phpdoc_name";s:7:"default";}}s:4:"name";s:3:"run";s:11:"description";s:139:"Run function for ajax-tree hooks. Generates XML for a tree list, which is interpreted by JavaScript and expanded on-demand (via new calls).";s:5:"flags";a:0:{}s:6:"return";a:2:{s:4:"type";s:6:"string";s:11:"description";s:40:"XML in the special category,entry format";}}s:6:"simple";a:6:{s:8:"filename";s:61:"sources/hooks/systems/ajax_tree/choose_catalogue_category.php";s:10:"parameters";a:3:{i:0;a:5:{s:4:"name";s:2:"id";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:54:"The ID to do under (null: root) - not always supported";s:11:"phpdoc_name";s:2:"id";}i:1;a:5:{s:4:"name";s:7:"options";s:3:"ref";b:0;s:4:"type";s:5:"array";s:11:"description";s:28:"Options being passed through";s:11:"phpdoc_name";s:7:"options";}i:2;a:7:{s:4:"name";s:2:"it";s:7:"default";N;s:11:"default_raw";s:4:"null";s:3:"ref";b:0;s:4:"type";s:8:"?ID_TEXT";s:11:"description";s:40:"The ID to select by default (null: none)";s:11:"phpdoc_name";s:2:"it";}}s:4:"name";s:6:"simple";s:11:"description";s:125:"Generate a simple selection list for the ajax-tree hook. Returns a normal style